Mam problem z pobieraniem strony. Mam WebServ 2.0 i PHP 5+
wyświetla poprawnie wartość
<!-- DATA BLOCK BEGIN -->
6534633265386564616333363261636162373132333635346239653733343332
<!-- DATA BLOCK END -->
oraz
<!-- DATA BLOCK BEGIN -->
e4c2e8edac362acab7123654b9e73432
<!-- DATA BLOCK END -->
w FireFox'ie.
W Delphi używam Synapse
napisałem sobie taką funkcje co wysyła zapytanie i odbiera dane (tworzenie komponentu jest przy tworzeniu aplikacji)
function WriteMessage(Method,Address,Data:String;RecData:Boolean):String;
var Str:String;
begin
HTTP.Document.Clear;
if UpperCase(Method) = 'POST' then begin
Data:=StrToHex(Data);
HTTP.Document.Write(Pointer('data='+Data)^, Length('data='+Data));
HTTP.MimeType := 'application/x-www-form-urlencoded';
end;
HTTP.HTTPMethod(Method,Format('%s/index.php?cmd=%s',[CORE_SERVER,Address]));
if RecData = True then begin
SetLength(Str,HTTP.Document.Size);
HTTP.Document.Write(Str,HTTP.Document.Size);
ShowMessage(Format('%s %s %d-%d',[Str,#10#13,Length(Str),HTTP.Document.Size]));
Delete(Str,1,Pos('<!-- DATA BLOCK BEGIN -->',Str)+26);
Result:=HexToStr(Copy(Str,1,Pos('<!-- DATA BLOCK END -->',Str)-3));
end;
end;
i nią wysyłam zapytanie metodą GET (WriteMessage('GET','0x000000','',True);).
Jak mam wysłane
<!-- DATA BLOCK BEGIN -->
6534633265386564616333363261636162373132333635346239653733343332
<!-- DATA BLOCK END -->
to mi wyświetla puste (tak jak by spacjami był zapełniony) mało tego to ucina mi wszystko później (z '%s %s %d-%d' wyświetla tylko pierwszy parametr).
Jednakże jak wysyłam coś takiego
<!-- DATA BLOCK BEGIN -->
e4c2e8edac362acab7123654b9e73432
<!-- DATA BLOCK END -->
to funkcja zwraca mi ładnie to e4c2e8edac362acab7123654b9e73432 ale jak poprzednio ucina wszystko później.
Nie rozumiem czemu