ajax - CORS:我需要它吗?

标签 ajax web-services cors

我有一组太多的域,我在中央服务器上拥有它们的公共(public)文件,例如 javascript 文件。

现在我有了这个设置:

单击域 A 上的页面项目时,将在中央服务器上执行脚本,该脚本调用域 A 上的 Web 服务。

所以我想如果我的脚本在域 A 上,一切都会正常工作(除了我必须在我的 60 个域上有大约 60 个脚本副本)。但我希望我的网络服务永远不会被调用,因为我这里有一个 CORS 问题。

所以:

“A”从“Central”加载脚本并执行它,“A”上的 Web 服务被放置在“Central”中的脚本调用。

这是需要 CORS 的情况吗?或者我的错误可能出在其他地方(或两者都有......但那是我的问题)

最佳答案

如果 客户端网页 需要 JavaScript,您只需要 CORS(或其他规避同源策略的方法)向具有不同来源(方案、主机名和/或端口)的 HTTP 服务器发出 HTTP 请求。 (异常(exception):如果它是一个简单的请求并且您不需要将响应数据提供给 JS)。

您需要 CORS 的最大线索是 JavaScript 错误控制台是否提示 Access-Control-Allow-Origin 不允许 Origin foo

您的描述不是很清楚,但听起来您是从托管在一个源上的客户端代码发出请求,但加载到托管在另一个源上的页面中,但它向页面的源发出 HTTP 请求。这可以。来源由脚本加载到的 HTML 文档的 URL 决定,而不是由脚本加载的 URL 决定。

关于ajax - CORS:我需要它吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24611450/

相关文章:

java - 如何使用 Jersey WS 从服务器中的文件夹获取图像?

sql - 通过 .NET ReportingService Web 服务调用连接时为 "Unable to Connect to the Remote Server"

javascript - 无法在 ember 中向后端服务器发出请求(错误 :'No Access-Control-Allow-Origin' )

ajax - CORS 是否允许使用 "Prefer" header ?

javascript - origin 'http://localhost:4200' 已被 CORS 策略阻止

javascript - 为什么ajax只显示最后一条数据

jquery - 通过 Ajax 更新引导模式

php - 如何用jquery删除mysql记录

javascript - 在 Oracle Apex 中实现对 Shuttle 值的依赖

java - HTTP 传输错误 : java.net.SocketException:连接重置