访问数据表单 REST URI 时在 AngularJS 中出现 CORS 错误

Posted

技术标签:

【中文标题】访问数据表单 REST URI 时在 AngularJS 中出现 CORS 错误【英文标题】:Getting CORS error in AngularJS when accessing data form REST URI 【发布时间】:2016-07-09 06:54:23 【问题描述】:

XMLHttpRequest 无法加载 http://hfdvcbapp01.vm.itg.corp.us.shldcorp.com:8180/cnb/cnb/report/summary?Company=IT。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin 'http://127.0.0.1:64033' 不允许访问。

当我尝试从位于服务器的 json 加载数据时出现此错误。我该如何解决这个问题。

【问题讨论】:

【参考方案1】:

您的 api 没有返回标头

Access-Control-Allow-Origin: http://yourdomain.com

允许特定域

Access-Control-Allow-Origin: *

允许所有

PS。还要确保标题确实存在。请注意,CORS 实际发送 2 个请求 1 将是 OPTIONS,第二个将是实际请求,因此如果您仅在 GETPOST 上返回标头不会工作。要在 chrome 中检查它,请按 f12,转到网络并请求确保标头存在 Read more

【讨论】:

这个东西我也试过了,还是不行 @Akshay 没有地方!这取决于你在后端有什么 谢谢 Volodymyr Bilyachat【参考方案2】:

应在响应中设置 Access-Control-Allow-Origin 标头,

如果它不是来自发送它的 URL 的同一来源,则应该从响应中设置标头 - 意思是 - 在你的情况下响应请求的服务器 - http://hfdvcbapp01.vm.itg.corp.us.shldcorp.com:8180, 如果服务器在您的控制之下,只需处理它,如果它是外部服务,您应该请求它。

【讨论】:

谢谢。我也试过了,但再次显示同样的错误。我该怎么办????????

以上是关于访问数据表单 REST URI 时在 AngularJS 中出现 CORS 错误的主要内容,如果未能解决你的问题,请参考以下文章

具有匿名/识别访问的 REST API 的最佳 URI 模式是啥?

使用导航表单时在 DoCmd.SearchForRecord 中引用表单 - 访问

使用 Django 访问没有表单(REST api)的 POST 字段数据

REST 和 URI 缓存

登录/注册表单的 REST 资源

Silverlight:访问表单身份验证站点后面的 REST 服务