如何在XMLHttpRequest中获取响应URL?

oca*_*nal 15 javascript ajax response xmlhttprequest

有一个页面(url),我通过XMLHttpRequest请求它,但是我没有得到请求的URL的响应,它正在将请求发送到另一个页面,

请求---> page.php
从> directedpage.php获取响应

问题是如何获得响应网址?(示例中为directedpage.php)

Rob*_*b W 29

最终URL(在所有重定向之后)在实例的responseURL属性中可用XMLHttpRequest.此功能是新功能,仅在2014年9月的 Firefox 32 稳定版[ref]2014年8月稳定的 Chrome 37.0.2031.0 [参考](可能还有Opera 24)中得到支持.responseURLIE 11或Safari 7及更早版本的浏览器尚未支持.对于这些浏览器,之前的答案仍然是正确的:

XMLHttpRequest自动跟踪重定向,而不保存属性中提供的URL.的Location报头可以既不通过检索.getResponseHeader().

参考文献:

  • @traxium对于阻塞的跨源请求,不可能得到`responseURL`.如果服务器没有响应预期的CORS响应头.然后浏览器必须假设服务器不愿意自愿提供敏感信息,因此它不会将重定向目标泄漏到脚本中. (2认同)