-1
我想發佈一些數據到端點,導致響應 - illegal characters in path
錯誤500:路徑中的非法字符
RootDTO = DTO的結構,我粘貼示例XML至this site 所以我相信這不是問題。
我做錯了什麼?
private Boolean ApiRequest(string order, string path)
{
var t = string.Empty;
var Obj_response = new RootDTO();
byte[] requestData = Encoding.UTF8.GetBytes(order);
HttpWebRequest req = WebRequest.Create(new Uri(path)) as HttpWebRequest;
req.Method = "POST";
req.Accept = "application/xml";
req.ContentType = "application/xml; charset=utf-8";
req.ContentLength = requestData.Length;
using (Stream post = req.GetRequestStream())
{
post.Write(requestData, 0, requestData.Length);
}
try
{
//XmlSerializer serializer = new XmlSerializer(typeof(RootDTO));
using (HttpWebResponse resp = req.GetResponse() as HttpWebResponse)
{
string resJson = string.Empty;
if (resp.StatusCode == HttpStatusCode.OK)
{
var ms = new StreamReader(resp.GetResponseStream(), UTF8Encoding.UTF8);
t = ms.ReadToEnd(); // <-----t contains "illegal characters in path"
return true;
}
else
{ // error occured?
return false;
}
}
}
catch (WebException ex)
{
// error during APIrequest
var resp = new StreamReader(ex.Response.GetResponseStream()).ReadToEnd();
}
return false;
}
那麼,什麼'路徑'包含,爲什麼你認爲它是有效的?你正在閱讀的是服務器響應,所以你的請求有問題。 – CodeCaster
路徑是URL端點 –
這不能回答我的問題。服務器告訴你所請求的路徑是無效的,所以有些東西你沒有告訴我們。你有一個請求_does_工作的例子,你是否嘗試使用這段代碼重建那個確切的請求? – CodeCaster