Gem*_*Gem 0 xml delphi indy delphi-xe6
我在Delphi XE6中工作,需要下载php脚本在服务器上生成的xml数据.我确实试过Indy IdHTTP.Get但它没有下载任何东西......当我尝试在浏览器或TWebBrowser中打开相同的链接时它显示生成的xml数据,但是当我尝试用IdHTTP Get直接拉它时,没有下载任何内容,就像没有生成数据一样......
Memo1.Lines.Add := idHTTP.Get(url);
Run Code Online (Sandbox Code Playgroud)
提供空的memo1.
任何提示或示例如何首先在某些服务器上执行php脚本,这将生成数据,并下拉该结果?
你可以这样做:
procedure TForm1.Button1Click(Sender: TObject);
var
dow: TIdHTTP;
xmlDoc: TXMLDocument;
xmlStrem: TMemoryStream;
begin
dow := nil;
xmlDoc := nil;
xmlStrem := nil;
try
try
dow := TIdHTTP.Create(Self);
dow.HandleRedirects := True;
xmlStrem := TMemoryStream.Create();
dow.Get('http://url.com/path/', xmlStrem);
xmlDoc := TXMLDocument.Create(Self);
xmlDoc.LoadFromStream(xmlStrem);
ShowMessage(xmlDoc.XML.Text);
except
on E: Exception do
begin
raise;
end;
end;
finally
if Assigned(dow) then FreeAndNil(dow);
if Assigned(xmlDoc) then FreeAndNil(xmlDoc);
if Assigned(xmlStrem) then FreeAndNil(xmlStrem);
end;
end;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2102 次 |
最近记录: |