如果请求是AJAX,我如何检测?
会检查
req.Header.Get("X-Requested-With")
适用于所有浏览器吗?
答案 0 :(得分:2)
不幸的是,“X-Requested-With”并不总是可靠的。如果您可以控制进行Ajax调用,则可以使用beforeSend函数来确保设置:
$.ajax({
url: "http://localhost/url",
data: { signature: authHeader },
type: "GET",
beforeSend: function(xhr){xhr.setRequestHeader('X-Requested-With', 'xmlhttprequest');},
success: function() { alert('Success!' + authHeader); }
});
然后,您可以检查req.Header.Get("X-Requested-With") == 'xmlhttprequest'