delphi下使用http協議post方式發送xml數據到asp頁面和aspx頁面

博客展示了在Delphi中使用HTTP协议的POST方式发送XML数据到ASP页面和ASPX页面的代码。给出了Delphi发送数据的函数,以及ASP和ASPX页面接收并处理XML数据的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

delphi端的發送代碼
None.giffunction Tverpipxinfo.postXml(const xmlstr, url: WideString): WideString;
None.gifvar
None.gifidHttp:TIdHTTP;
None.gifsends:tstrings;
None.gifIdEncoderMIME1:TIdEncoderMIME;
None.gifbegin
None.gif  result:
='';
None.gif  
try
None.gif   idHttp:
= TIdHTTP.Create(nil);
None.gif   idHttp.Request.ContentType :
= 'application/x-www-form-urlencoded';
None.gif   IdEncoderMIME1:
=TIdEncoderMIME.Create(nil);
None.gif   sends:
=tstringlist.Create;
None.gif   sends.Add(
'xmlstr='+IdEncoderMIME1.Encode(xmlstr));
None.gif   result:
=idhttp.Post(url,sends);
None.gif  except
None.gif   on E:Exception 
do
None.gif     begin
None.gif       result:
=e.Message;
None.gif     end;
None.gif  end;
None.gif  idHttp.Free;
None.gif  IdEncoderMIME1.Free;
None.gif  sends.Free;
None.gifend;
asp端接收方法
None.gif<%@ Language=VBScript %>
None.gif
<%'On Error Resume Next 
None.gif
    xmlstr=Request.form("xmlstr")
None.gif    
set xmlobj=server.CreateObject("microsoft.xmldom")    
None.gif    xmlobj.loadXML xmlstr
None.gif    Response.ContentType
="text/xml"%>
None.gif    
<?xml version="1.0" encoding="big5"?>
None.gif    
<%
None.gif    Response.Write xmlobj.xml
None.gif    
set xmlobj=nothing
None.gif%
>
aspx端接收方法
None.gifprivate void Page_Load(object sender, System.EventArgs e)
ExpandedBlockStart.gifContractedBlock.gif
dot.gif{
InBlock.gif    
string str = "";
InBlock.gif    
string reqstr="";
InBlock.gif    
try
ExpandedSubBlockStart.gifContractedSubBlock.gif    
dot.gif{
InBlock.gif        XmlDocument doc 
= new XmlDocument();
InBlock.gif        
//doc.Load(Request.InputStream);
InBlock.gif
        reqstr=Request.Form["xmlstr"];
InBlock.gif        reqstr 
=Encoding.GetEncoding("big5").GetString(Convert.FromBase64String(reqstr)); 
InBlock.gif        doc.LoadXml(reqstr);
InBlock.gif        doc.Save(
"d:/test.xml");
InBlock.gif        Response.Write(
"How are youdot.gif..");
ExpandedSubBlockEnd.gif    }

InBlock.gif    
catch(Exception e1)
ExpandedSubBlockStart.gifContractedSubBlock.gif    
dot.gif{
InBlock.gif        str 
= e1.Message;
ExpandedSubBlockEnd.gif    }

InBlock.gif    Response.Write(
"str ==" + str);
ExpandedBlockEnd.gif}

转载于:https://www.cnblogs.com/oisiv/archive/2005/06/23/179633.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值