在delphi应用程序中从网站获取XML

get XML from Website in delphi application

我们有一个桌面应用程序(Delphi)。在此应用程序中,我们通过Shellexecute启动网站。

客户在网站上填写表格,然后单击一个按钮以生成XML。

他想要的是在delphi应用程序中接收XML。我们如何将XML从网站推送到delphi deskptop应用程序。我们不希望用户将xml保存在PC上,因为他们不知道Explorer的工作方式。

当他单击按钮时,如何从网站获取XML?


与其在网站上输入表单,不如在应用程序中创建表单供用户填写,然后将数据发送到网站,这样您最好在TIdHTTP组件的帮助下将xml返回。

您可以按照以下步骤填写表单参数:

1
2
3
4
procedure AddFormParam(FormParams: TStringList; const Name, Value: string);
begin
  FormParams.Add(Name + '=' + Value);
end;

例如,如果cgi期望使用以下名称的字段:名称,地址,消息,则您将像这样填写参数:

1
2
3
AddFormParam(FormParams, 'Name', NameValueString);
AddFormParam(FormParams, 'Address', AddressValueString);
AddFormParam(FormParams, 'Message', MessageValueString);

然后将其发送到服务器cgi:

1
2
3
4
function GetXML(HTTP: TIdHTTP; const FormCgiURL: string; FormParams: TStringList): string;
begin
  Result := HTTP.Post(FormCgiURL, FormParams);
end;