<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Thank you Michael for the response. I'll check what headers INDY
sends.</p>
<p>Ondrej<br>
</p>
<p><br>
</p>
<div class="moz-cite-prefix">On 01.07.2019 14:57, Michael Van
Canneyt wrote:<br>
</div>
<blockquote type="cite"
cite="mid:alpine.DEB.2.21.1907011445330.19412@home">
<br>
I tested:
<br>
<br>
If I run a strace, it just hangs on the read operation:
<br>
<br>
connect(3, {sa_family=AF_INET, sin_port=htons(80),
sin_addr=inet_addr("128.30.52.100")}, 16) = -1 EINPROGRESS
(Operation now in progress)
<br>
select(4, NULL, [3], NULL, {tv_sec=3, tv_usec=0}) = 1 (out [3],
left {tv_sec=2, tv_usec=884913})
<br>
getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0
<br>
fcntl(3, F_GETFL) = 0x802 (flags
O_RDWR|O_NONBLOCK)
<br>
fcntl(3, F_SETFL, O_RDWR) = 0
<br>
sendto(3, "GET /TR/2002/REC-xmldsig-core-20"..., 112, 0, NULL, 0)
= 112
<br>
recvfrom(3,
<br>
<br>
If I do the same with 'wget' it also hangs but in the end gets
through..
<br>
<br>
But if you add some headers, you get a proper error response.
<br>
<br>
There is little I can do about that. I can only surmise Indy &
wget send different
<br>
headers (E.G.user-agent) and the server reacts differently on
that.
<br>
<br>
<br>
<br>
Michael.
<br>
<br>
On Mon, 1 Jul 2019, Ondrej Pokorny wrote:
<br>
<br>
<blockquote type="cite">Hello,
<br>
<br>
I cannot download
<a class="moz-txt-link-freetext" href="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd">http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd</a>
with TFPHTTPClient. Delphi INDY downloads it just fine. Does
anybody know what I am missing?
<br>
<br>
Test code:
<br>
<br>
program Project1;
<br>
uses Classes, SysUtils, fphttpclient;
<br>
procedure DownloadFile(const aURI: string; out outStream:
TStream);
<br>
var
<br>
xClient: TFPHTTPClient;
<br>
begin
<br>
outStream := nil;
<br>
xClient := TFPHTTPClient.Create(nil);
<br>
try
<br>
xClient.AllowRedirect := True;
<br>
outStream := TMemoryStream.Create;
<br>
xClient.Get(aURI, outStream);
<br>
outStream.Position := 0;
<br>
except
<br>
on E: Exception do
<br>
begin
<br>
FreeAndNil(outStream);
<br>
Writeln(E.ClassName);
<br>
Writeln(E.Message);
<br>
end;
<br>
end;
<br>
xClient.Free;
<br>
end;
<br>
var
<br>
S: TStream;
<br>
begin
<br>
DownloadFile('<a class="moz-txt-link-freetext" href="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd">http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd</a>',
S);
<br>
S.Free;
<br>
Readln;
<br>
end.
<br>
<br>
Fails with exception:
<br>
<br>
EHTTPClient
<br>
Error reading data from socket
<br>
<br>
#0 fpc_raiseexception(0x145fb14, 0x0, 0xffffffff) at
..\inc\except.inc:158
<br>
#1 FILLBUFFER(0x145fb14) at fcl-web\src\base\fphttpclient.pp:731
<br>
#2 READSTRING(0x15e1c30, 0x0) at
fcl-web\src\base\fphttpclient.pp:749
<br>
#3 READRESPONSEHEADERS(0x15e1c30) at
fcl-web\src\base\fphttpclient.pp:854
<br>
#4 READRESPONSE(0x15e1c30, 0x15b5dc0, 0x145fdb8, 0, false) at
fcl-web\src\base\fphttpclient.pp:1132
<br>
#5 DONORMALREQUEST(0x15e1c30, {PROTOCOL = 0x15b5e4c 'http',
USERNAME = 0x0, PASSWORD = 0x0, HOST = 0x15b5ecc '<a class="moz-txt-link-abbreviated" href="http://www.w3.org">www.w3.org</a>',
PORT = 0, PATH = 0x1601c9c '/TR/2002/REC-xmldsig-core'...,
DOCUMENT = 0x15bc58c 'xmldsig-core-schema.xsd', PARAMS = 0x0,
BOOKMARK = 0x0, HASAUTHORITY = true}, 0x449d58 'GET', 0x15b5dc0,
0x145fdb8, 0, false, false) at
fcl-web\src\base\fphttpclient.pp:1226
<br>
#6 DOMETHOD(0x15e1c30, 0x449d58 'GET', 0x443060
'<a class="moz-txt-link-freetext" href="http://www.w3.org/TR/2002">http://www.w3.org/TR/2002</a>'..., 0x15b5dc0, 0x145fdb8, 0) at
fcl-web\src\base\fphttpclient.pp:1283
<br>
#7 HTTPMETHOD(0x15e1c30, 0x449d58 'GET', 0x443060
'<a class="moz-txt-link-freetext" href="http://www.w3.org/TR/2002">http://www.w3.org/TR/2002</a>'..., 0x15b5dc0, 0x145fdb8, 0) at
fcl-web\src\base\fphttpclient.pp:1397
<br>
#8 GET(0x15e1c30, 0x443060 '<a class="moz-txt-link-freetext" href="http://www.w3.org/TR/2002">http://www.w3.org/TR/2002</a>'...,
0x15b5dc0) at fcl-web\src\base\fphttpclient.pp:1439
<br>
#9 DOWNLOADFILE(0x443060 '<a class="moz-txt-link-freetext" href="http://www.w3.org/TR/2002">http://www.w3.org/TR/2002</a>'...,
0x15b5dc0) at project1.lpr:14
<br>
#10 main at project1.lpr:30
<br>
<br>
Ondrej
<br>
<br>
_______________________________________________
<br>
fpc-devel maillist - <a class="moz-txt-link-abbreviated" href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a>
<br>
<a class="moz-txt-link-freetext" href="https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel">https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</a>
<br>
<br>
</blockquote>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
fpc-devel maillist - <a class="moz-txt-link-abbreviated" href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a>
<a class="moz-txt-link-freetext" href="https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel">https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</a>
</pre>
</blockquote>
</body>
</html>