我遇到了一个非常特殊的问题,我在这里找到的答案都没有解决它。
在某些客户端(IE7、IE8)上,当我使用 jQuery Ajax 发布数据时,例如:
$.ajax({
type: 'POST',
url: '<%= ResolveUrl"~/User.svc/GetUserListForCity") %>',
data: '{"city":' + cityId + '}',
contentType: 'application/json; charset=UTF-8',
dataType: 'json',
success: processList,
error: showErrorAlert
});
我得到的错误:
“OperationFormatter 无法反序列化消息中的任何信息,因为消息为空 (IsEmpty = true)。”
但是,当我尝试使用 Fiddler 查看数据时,请求成功。
服务器是 IIS,请求由 WCF Web 服务 (webHttpBinding) 提供服务。删除 contentType 以允许默认值被服务器拒绝,因为它需要 JSON。任何建议都非常感谢。