C# 通过HTTP-Webforms发布XML
所以我得到了这个代码,理想情况下不能改变。在我的测试站点上,该代码执行良好,并将新数据发布到数据库中。但在现场我得到以下错误。有人能就这可能是什么提出建议吗C# 通过HTTP-Webforms发布XML,c#,asp.net,.net,xml,http,C#,Asp.net,.net,Xml,Http,所以我得到了这个代码,理想情况下不能改变。在我的测试站点上,该代码执行良好,并将新数据发布到数据库中。但在现场我得到以下错误。有人能就这可能是什么提出建议吗 protected void Button1_Click(object sender, EventArgs e) { WebRequest req = null; WebResponse rsp = null; // try // { string fileName = Server.MapPat
protected void Button1_Click(object sender, EventArgs e)
{
WebRequest req = null;
WebResponse rsp = null;
// try
// {
string fileName = Server.MapPath("ExampleXML.xml");
string uri = "http://XXX/api/index.aspx";
req = WebRequest.Create(uri);
//req.Proxy = WebProxy.GetDefaultProxy(); // Enable if using proxy
req.Method = "POST"; // Post method
req.ContentType = "text/xml"; // content type
// Wrap the request stream with a text-based writer
StreamWriter writer = new StreamWriter(req.GetRequestStream());
// Write the XML text into the stream
writer.WriteLine(this.GetTextFromXMLFile(fileName));
writer.Close();
// Send the data to the webserver
rsp = req.GetResponse();
// }
// catch (WebException webEx)
// {
// }
// catch (Exception ex)
// {
// }
// finally
//{
if (req != null) req.GetRequestStream().Close();
if (rsp != null) rsp.GetResponseStream().Close();
//}
}
仅实时站点上的错误为:-
Server Error in '/' Application.
Cannot send a content-body with this verb-type.
Line 47: // finally
Line 48: //{
Line 49: if (req != null) req.GetRequestStream().Close();
Line 50: if (rsp != null) rsp.GetResponseStream().Close();
Line 51: //}
但是我正在发送一个POST请求,这在我的测试站点上有效,而不是在现场。我已经确保代码被复制,所有文件都存在
为什么这段代码可以在其中一个上工作,而不能在另一个上工作
干杯,
Mike.对于那些感兴趣的人来说,这里的问题是web.config中的URL重写,该URL被设置为将.aspx替换为/。这会阻止XML数据的发送,并导致上述错误。检查应该可以回答您的问题。不幸的是,这并不能解决问题。相同的错误仍然存在于相同的位置。