2
我试图通过POST使用HttpWebRequest对象调用RESTful服务。我正在尝试传递一个变量与包含url编码字符串的请求正文。当它碰到服务器时我看到请求;但是,它显示了2个表单变量。第一个是Form [null],第二个是我的变量。HttpWebRequest POST向表单变量添加NULL值
我试图找到这个NULL键的来源;但是,我不能。任何关于如何补救这个问题的想法,因为当我尝试将它用于.Net的Nancy Web框架时,它会抛出问题。
代码:
var request = WebRequest.Create("http://localhost:8888/RouteName") as HttpWebRequest;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
var jsonString =
"[\"00000000-0000-0000-000000000001\",\"00000000-0000-0000-000000000002\"]";
var data = new StringBuilder();
data.Append("Keys=" + HttpUtility.UrlEncode(jsonString));
byte[] byteData = UTF8Encoding.UTF8.GetBytes(data.ToString());
request.ContentLength = byteData.Length;
using (var requestStream = request.GetRequestStream())
{
requestStream.Write(byteData, 0, byteData.Length);
}
using (var response = request.GetResponse() as HttpWebResponse)
{
// ends up with a 500 response.
}