我们使用以下AjaxSetup:在第500个用户关于发送一次GET请求,而不是POST
$.ajaxSetup(
{
cache: false,
type: 'POST',
contentType: "application/json",
data: "{}",
headers: { "Accept": "application/json; charset=utf-8" },
beforeSend: function(jqXHR, options)
{
if (options.contentType == "application/json" && typeof options.data != "string")
options.data = JSON.stringify(options.data);
},
processData: false
});
我返回以下我的职务要求:
$.ajax(
{
url: '/url',
data: postData,
success: function(json)
{
}
})
我们与ASP的工作。 NET,并且这些默认值通常很好地工作。所有内容都会自动同步到JSON,并在ASP.NET管道中正确读取和模型绑定。
只有一次在大约一千个用户似乎有问题。而不是POST
请求,他们的客户端发送GET
请求。
用户代理提到了在Windows 7
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36
的Chrome 37.0.2062.120难道是什么原因,该客户端发送GET请求?
- 这可能是由adblocker造成的吗?
- 或防火墙设置?
- 我可以跟踪哪些其他设置进一步调查?
也许你的用户之一是一个巨魔:)你有没有试过tracert + wireshark? – theMarceloR 2014-09-12 13:38:55
获取相同规格的浏览器,到达通过'get'而不是'post'发送的位置,重复相同的几次。如果重复,则可能是浏览器中的错误。你可以使用接受GET和POST方法吗?请求? – Justinas 2014-09-12 13:39:21
你确定它不只是手动进入'/ url'吗?这会调用get。 – briansol 2014-09-12 13:46:29