1
我对AJAX请求WCF服务在客户端一些错误处理,IE9的XmlHttpRequest返回12019错误而不是HTTP/417响应代码
self.remove = function (dep, processingResult) {
var data = { "id": dep };
$.ajax({
url: 'my.svc/remove',
type: 'POST',
contentType: 'application/json',
dataType: "json",
cache: false,
data: JSON.stringify(data),
complete: function (e, xhr, settings) {
var message = self.getMessage(e.status);
switch (e.status) {
case 200:
processingResult();
break;
case 417:
console.log(e.statusText);
radalert(message + e.statusText, null, null, "417");
break;
default:
{
console.log(e.statusText);
radalert(message, null, null, "bekey");
}
}
}
});
};
在一些情况下,我返回错误417,但IE9得到结果与一些12019错误,而不是。 包括IE10在内的所有其他浏览器都获得了正确的值。
为什么会发生,以及如何解决它?
12019 - ERROR_INTERNET_INCORRECT_HANDLE_STATE 请求的操作无法进行,因为提供的 手柄是不正确的状态。
看起来像返回这个代码是不是很好的做法。我对吗 ?
WebOperationContext ctx;
//....
ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.ExpectationFailed;//417
//...
这在IE的旧版本中发生了相当的量,http://forums.asp.net/t/1126173.aspx。你可以尝试链接中的步骤吗? – Chris