jQuery检查调用是否是跨域的

时间:2011-03-29 11:12:29

标签: javascript jquery ajax

我想知道是否有任何方法可以检查该呼叫是否是跨域呼叫。也许像旗子一样测试它是否是跨域的,所以我可以使用另一种方法。

例如:

$.ajax({
  type: "POST",
  url: "cross-domaincallURL", 
  success: function(response, status, xhr){ 
    if OPTIONS then cross-domain
    if not then not cross-domain 
  }
});

1 个答案:

答案 0 :(得分:0)

我认为最简单的方法是将“cross-domaincallURL”与window.location的域部分进行比较。

您可以将该逻辑封装到单独的函数中,或者将其添加到ajax对象中(但这是另一层)。

编辑:

您可以通过window.location.hostname https://developer.mozilla.org/en/DOM/window.location

获取当前位置的域名部分

我认为您可以在beforeSend(jqXHR, settings)事件中获取AJAX请求网址。因为它通过了设置。