JS和不同端口的API服务器之间的交互

Interaction between JS and API server on different port

本文关键字:API 服务器 之间 交互 JS      更新时间:2023-09-26

我有一个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');