javascript - 不同端口的JS与API服务器交互

标签 javascript ajax cross-domain-policy

我有一个 API 服务器在端口 AAAA 上运行,JS 前端应用程序(emberjs,使用 yeoman)在开发机器上的端口 BBBB 上运行。在实时服务器上,这些端口将是相同的。不幸的是,在开发机器上我遇到了跨源策略问题。

我该怎么办?

PS:目前我通过启动 Chrome 来解决这个问题

open -a Google\ Chrome --args --disable-web-security

并在 JS api 中使用绝对根路径 http://localhost:8888/。但我并不是真正喜欢硬编码 url 和特殊标志。如果有更好的解决方案,请告诉我!

最佳答案

除了使用带有 --disable-web-security 的 chrome 之外,我还使用这个代码片段来避免对 API 来源进行硬编码

var origin = location.origin.replace(/localhost:(\d+)/, 'localhost:8888');

并且仅为本地开发更改它。

关于javascript - 不同端口的JS与API服务器交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14422291/

相关文章:

javascript - Gulp.js,保存文件时观察任务运行两次

javascript - 如何防止用户从查询参数访问 JSON 数据?

angularjs - 重新定义的跨域请求。我做错了什么?

javascript - 路由更改后,运行一次js脚本

javascript - 如何在另一个 Javascript 文件中使用一个函数?

javascript - 从 $.get 函数中获取数据

node.js - 通过 TLS 连接上的 Node js 将跨域策略发送到 Flash

javascript - 使用 Jquery 和 Ajax 的 Accordion 列表

javascript - Node js 路由器不处理删除

silverlight - 使用 WebClient() 从 Silverlight 访问 RSS 提要时出错