单元文件 utils_strings 中有这么一段代码
function TDBufferBuilder.ToString: String;
begin
CheckNeedSize(2);
FData[FSize] := 0;
FData[FSize + 1] := 0;
{$IFDEF MSWINDOWS}
{$IF (RTLVersion>=26) and (not Defined(NEXTGEN))}
TEncoding.Default.GetString(FData, 0, self.Length); //这句有BUG
{$ELSE}
Result := StrPas(PAnsiChar(@FData[0]));
{$IFEND >=XE5}
{$ELSE}
Result := TEncoding.Default.GetString(FData, 0, self.Length);
{$ENDIF}
end;
Pascal其中的
TEncoding.Default.GetString(FData, 0, self.Length);
Pascal应调整为
Result := TEncoding.Default.GetString(FData, 0, self.Length);
Pascal否则调用 Request.GetBodyAsString; 时,无法获取HTTP 中的 body值