我正在使用带有 asp.net webapi 的 IIS 7.5 来删除记录 ID。我可以让它在 Safari 中工作,但不能在 Firefox 中工作。这是 jQuery Ajax 提交的请求/响应的图像:
http://screencast.com/t/Ckls9nO8D
这是我的 jQuery Delete 提交的代码片段:
var deleteGame = function(gameId)
{
var d = $.Deferred();
var url = Enum.RootUrl + Enum.DeleteGameUrl + gameId;
jQuery.support.cors = true;
$.ajax(
{
url: url,
type: 'Delete',
cache: false,
crossDomain: true,
processData: true,
success: function ()
{
d.resolve();
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
//alert("error happened AGAIN:\n" + JSON.stringify(XMLHttpRequest) );
}
});
return d.promise();
};
这是生成的 jquery 提交 URL: http ://local.guessalist.com/api/game/46
我不确定为什么它适用于 Safari 而不是 Firefox。请帮忙。
请求标头中似乎缺少 Access-Control-Request-Headers。我不确定这是否是问题的原因。
在 Safari 和 Chrome 中玩过这个之后,我得到“拒绝设置不安全的标头”Access-Control-Request-Headers”选项http://local.guessalist.com/api/game/64 405(不允许的方法)" 通过浏览器的控制台在每个浏览器中出现错误,但允许继续删除操作。不知道我在这里做什么。任何建议将不胜感激。