0

我正在尝试仅使用 JS 来检测服务器信息,例如 HTTP 响应代码和内容。

由于同源策略,我不允许使用正常的 ajax 请求,因此我被迫遵循解决方法

  1. 使用 JSONP 很棒,但如果出现错误,我不知道响应页面的 HTTP 代码或内容

  2. 使用图像请求并不是真正的选项原因,与上面相同,我不知道 HTTP 代码或内容。我只能知道我是否将图像加载到 DOM。

  3. 将 AJAX 与CORS一起使用。这是迄今为止最好的解决方案,但如果它不是我的服务器,我无法检测到 HTTP 代码:(。同样适用于 flash 和 crossdomain.xml 策略。

  4. 使用 iframe,据我所知,我无法检测到 HTTP 代码或内容。

在写这篇文章时,我刚刚注意到我正在处理 XSS 问题,但我需要从 JS 获取的只是 HTTP 代码或另一个域的内容。

欢迎所有建议。

4

1 回答 1

1

我担心使用客户端 JavaScript 是不可能的,除非服务器实现了一种机制,允许您通过简单地支持 CORS 或将信息包含在 JSONP 请求的 JSON 响应中来收集此信息。

但是,如果您有一些服务器端支持,您可以放置​​一个 API 允许您这样做。例如,您调用服务器上的服务,该服务依次在远程服务器上执行请求并返回所需的信息。

于 2013-11-04T16:27:41.227 回答