-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