【问题标题】:StrongLoop Framework - Access-Control-Allow-Origin: *StrongLoop 框架 - 访问控制允许来源:*
【发布时间】:2015-04-30 22:20:06
【问题描述】:

我有一个 AngularJS / Strongloop 项目。代码的 AngularJS 部分与 Strongloop 项目不在同一位置,因此我遇到了 CORS 问题。我已经对这个问题做了很多阅读,但是我不知道如何解决它。

据我所知,我的问题出在服务器端。见下图。

我不知道如何将 Strongloop 配置为... “访问控制允许来源”:“*”

我是否应该尝试使用 ACL 中内置的 Strongloop 以不同的方式解决这个问题?有人可以指出我可以在哪里更正 Strongloop 中 API 的标头吗?

据我了解,以下是一些与该问题相关的文章。

http://blogs.telerik.com/kendoui/posts/11-10-03/using_cors_with_all_modern_browsers

how to handling CORS over $http in Angularjs1.3

【问题讨论】:

  • 我还要在 AngularJS 端添加一点,我的应用文件看起来像这样... var app = angular.module('myApp', []); app.config(['$httpProvider', function($httpProvider) { $httpProvider.defaults.useXDomain = true; // 用于 IE 9 + $httpProvider.defaults.withCredentials = true; // 用于非 IE 浏览器删除$httpProvider.defaults.headers.common['X-Requested-With']; } ]);
  • 所以我将标准的 CORS 配置添加到 AngularJS 中,但仍然无法正常工作。

标签: angularjs node.js rest loopbackjs strongloop


【解决方案1】:

尽管如此令人沮丧,但我还是想通了。原来我在原始帖子中遗漏的一个细节是,这个应用程序是使用 Cloud 9 (http:c9.io) 的两个独立实例构建的,一个用于客户端,一个用于服务器。我这样做是因为它模拟了应用程序在其生产环境中的安装方式。问题与 Cloud 9 有关,当我将此应用程序移植到两个不同的服务器(与 Cloud 9 无关)时,问题立即得到解决,Strongloop 或 AngularJS 完全没有代码更改。

这真的太糟糕了,因为到目前为止我一直喜欢使用 Cloud 9。我想我会试试 codebox。

以下是移植到非 Cloud 9 实例时响应标头的屏幕截图。如您所见,导致问题的 Access-Control-Allow-Origin 不再受到限制

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-02
    • 2017-12-15
    • 2016-08-18
    • 2022-01-09
    • 2013-07-04
    • 2012-11-05
    相关资源
    最近更新 更多