[英]Posting XML over HTTP - Webforms
因此,我有此代碼,理想情況下,該代碼不得更改。 在我的測試站點上,此代碼可以很好地執行並將新數據發布到數據庫中。 但是在實時站點上,我收到以下錯誤。 誰能建議這可能是什么?
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請求,它可以在我的測試站點上運行,而不能在實時站點上運行。 我確保代碼已復制並且所有文件都存在。
為什么此代碼只能在一個而不是另一個上工作?
干杯,邁克。
對於有興趣的人,這里的問題是在web.config中重寫URL,該URL設置為用/替換.aspx。 這阻止了正在發送的XML數據,並導致了上述錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.