如何从asp.net使用webrequest将xml发送到asp页面?
我想从asp.net页面将xml文档发布到asp页面。如果我将WebRequest与content/type text/xml一起使用,文档将永远不会到达asp页面。我该怎么做呢?这是绝对可能的。确保您正在将XML写入RequestStream如何从asp.net使用webrequest将xml发送到asp页面?,asp.net,xml,asp-classic,Asp.net,Xml,Asp Classic,我想从asp.net页面将xml文档发布到asp页面。如果我将WebRequest与content/type text/xml一起使用,文档将永远不会到达asp页面。我该怎么做呢?这是绝对可能的。确保您正在将XML写入RequestStream 我确实使用GetRequestStream。但是,如果您尝试发送内容类型为text/xml的xml,如value,文档将永远无法到达其目的地以下是一个没有任何错误处理的示例(自己动手:): 您正在使用.NET2.0吗?您是否看到任何错误?最好在问题中添加
我确实使用GetRequestStream。但是,如果您尝试发送内容类型为text/xml的xml,如
value
,文档将永远无法到达其目的地以下是一个没有任何错误处理的示例(自己动手:):
您正在使用.NET2.0吗?您是否看到任何错误?最好在问题中添加一些代码。是的,我使用的是.NET 2.0无错误。但我没有从中得到任何回复内容。但是当我用PHP做同样的事情时,我会从中得到响应内容,很难知道你是如何确定文档永远不会到达目的地的。ASP中的代码是否实际运行?您如何使用请求实体?给我们看一些代码!请不要发布其他答案,这不是NG或论坛。编辑您的原始问题。我是这样实现的:string targetUri=“”;System.Xml.XmlDocument reqDoc=new System.Xml.XmlDocument();Load(Server.MapPath(“~\\myfile.xml”);字符串xmlData=reqDoc.InnerXml;HttpWebRequest请求=(HttpWebRequest)WebRequest.Create(targetUri);string sendString=formParameterName+“=”+HttpUtility.UrlEncode(xmlData);“formParameterName”将包含什么内容?
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(targetUri);
string sendString = formParameterName + "=" + HttpUtility.UrlEncode(xmlData);
byte[] byteStream;
byteStream = System.Text.Encoding.UTF8.GetBytes(sendString);
request.Method = POST;
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byteStream.LongLength;
using(Stream writer = request.GetRequestStream())
{
writer.Write(byteStream, 0, (int)request.ContentLength);
writer.Flush();
}
HttpWebResponse resp = (HttpWebResponse)request.GetResponse();
//read the response