使用来自 API 的 $http.get 进行 Angular.js 本地开发

Posted

技术标签:

【中文标题】使用来自 API 的 $http.get 进行 Angular.js 本地开发【英文标题】:Angular.js local development with $http.get from API 【发布时间】:2014-10-23 11:04:44 【问题描述】:

我正在尝试设置 Angular.js 应用程序的本地开发环境,该应用程序从远程 API 获取数据,但我受制于跨域源策略。 API 不提供 JSONP 或除纯 JSON 响应之外的任何内容。虽然,GET 在我的网站上正常工作。除了将开发环境移动到远程服务器(或者如果它甚至有帮助,移动它)之外,还有其他解决方案吗?

【问题讨论】:

【参考方案1】:

是的,您的另一个选择是在服务器上设置 CORS 并将您的 Angular js 应用程序设置为使用 xDomain 服务。

设置服务器以启用 CORS 很容易使用需要为每次调用发送的少量响应标头:

您可以在此处了解如何根据您的服务器技术启用它们:

http://enable-cors.org/server.html

对于 angularjs,您需要在 app.js 的配置部分设置 xDomain 调用:

.config(function ($stateProvider, $urlRouterProvider, $httpProvider) 

        $httpProvider.defaults.useXDomain = true;

        delete $httpProvider.defaults.headers.common['X-Requested-With'];

    )

【讨论】:

以上是关于使用来自 API 的 $http.get 进行 Angular.js 本地开发的主要内容,如果未能解决你的问题,请参考以下文章

如何从来自 http.get 响应的对象中提取数据

使用body.json()解析来自http.get()的响应时出错

Ionic2,Angular2:如何在使用 http get 进行 REST API 服务调用时避免 CORS 问题?

在 Rails 中使用 HTTP GET 请求进行 CSRF 保护

Delphi中怎么通过http get方式来调用url

Delphi中怎么通过http get方式来调用url