繁体   English   中英

Access-Control-Allow-Origin不允许AngularJS Origin http:// localhost:8080

[英]AngularJS Origin http://localhost:8080 is not allowed by Access-Control-Allow-Origin

我正在使用AngularJS开发Web应用程序。 它包含一个管理界面,该界面依赖于另一个域上的json-rpc API。

在我的本地环境中,如果我向API服务器发出请求(使用AngularJS),则会收到错误“控制台浏览器中的Access-Control-Allow-Origin不允许访问http:// localhost:8080 ”。

我已经读过现代浏览器的限制,无法将请求阻止到另一个域,但是....如果没有解决方案...我是否需要创建我的Web服务(使用一种后端语言:es:PHP或Python)向API Web服务器发出请求,然后对此发出AngularJS请求?

为什么在我的应用程序基础结构中间需要另一个“ Web服务器”?

提前致谢。 F。

更新:我已经在这里阅读了有关crossdomain.xml的文件: http : //www.adobe.com/devnet/adobe-media-server/articles/cross-domain-xml-for-streaming.html

在某种程度上,这是否可以解决我的问题?

因为服务器在响应ajax请求时必须发送启用了CORS的标头。 就像是:

“访问控制允许来源”,“ *”

“访问控制允许凭据”,true

“访问控制允许方法”,“ POST,GET,PUT,DELETE,OPTIONS”

“访问控制允许标题”,“内容类型”

但是,请阅读有关CORS的更多信息,以保护您的服务器。 当前的Internet浏览器在发送ajax通信时会检查这些标头。 出于安全原因。

拥有Web服务器始终是一种选择,但是如果您希望保留在客户端上,请考虑使用JSONP。 在这里阅读: JSONP的全部含义是什么?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM