AngularJS中的多个跨域资源端点

时间:2014-08-29 06:39:12

标签: angularjs cross-domain cors angularjs-resource

以下是我的情景:

我打算构建一个AngularJS webapp,它需要与多个跨域服务器进行交互。有两种方法:

  1. 从客户端提出所有请求 - 根据我的理解,AngularJS使我们能够构建一个富客户端并对服务器进行REST调用以获取数据。但是对于这种方法,我必须处理CORS问题。

  2. 将这些调用移至服务器端(Node.js) - Node.js对跨域服务器进行所有调用。它公开了AngularJS的REST API,以请求Node.js进行这些调用。

  3. 哪种方法适合我的方案?是否有任何标准可以指导我使用哪种方法?

    我不维护这些跨域资源。我无法控制他们提供资源的方式。此外,至少有一个资源不支持CORS。此时我配置代理来处理这些调用。

1 个答案:

答案 0 :(得分:1)

在与跨域交互时,如果目标服务器支持,则选项使用CORS或JSONP。 如果不是唯一可行的选择是通过您自己的服务器代理请求。

您可以通过服务器进行所有代理,但这需要付出精力和时间来实施。 对于支持它的服务器执行正常的CORS或JSONP方式并没有任何损害,并且当底层基础结构不支持它时使用代理方法。