【发布时间】:2014-07-08 18:36:50
【问题描述】:
我有一个正在传递给 webapi 的 json 字符串,现在的问题是,当我尝试添加特殊字符时,接收对象变为空。
这是我做的。
string json = JsonConvert.SerializeObject(ojectParams);
WebClient client = new WebClient();
client.Headers.Add("content-type", "application/json; charset=utf-8");
client.Headers.Add("AppKey", WebUser.AppKey);
client.Headers.Add("AppSecret", WebUser.AppSecret);
client.Headers.Add("AccountId", WebUser.AccountId.ToString());
if (!string.IsNullOrEmpty(WebUser.StoreId))
{
client.Headers.Add("StoreId", WebUser.StoreId);
}
var returnedStringObject = client.UploadString(string.Format("{0}/{1}", ConfigurationManager.AppSettings["Api"], endpoint), method, json);
这是 json 字符串:
"{\"Firstname\":\"kyv®\",\"Lastname\":\"sab®\"}"
我已在标题中添加了这个,希望它能解决问题。但没有运气。
charset=utf-8
在接收端点上,obj 变为 null。但是当我删除特殊字符时,值正在被传递。
[HttpPost]
public responseObj Endpoint(requestObj request)
有什么想法吗?谢谢!
【问题讨论】:
-
仅供参考,这篇文章使用的是异步上传。我的不是。我希望它保持原样。
-
检查模型状态有效性以查看是否有任何错误
-
模型状态没有错误
标签: json asp.net-mvc-4 asp.net-web-api