允许与Yeoman(1.0)grunt服务器进行跨域调用

我一直在使用Yeoman 0.9,直到昨天,我决定使用OS X上的beta 1.0版本。我使用Yeoman开发一个angular度应用程序。

随着我的应用程序的完成和工作的Yeoman 0.9 – > 1.0迁移,我现在渴望扩大开发的开发服务器 自耕农 grunt服务器,允许我跨域调用由另一个服务器托pipe的另一个团队开发的API,他们已经允许跨域调用。 到目前为止,我们一直在使用angular.js伪造的http后端。

– 旁边 –

如果有人正在阅读本文,寻求快速解决scheme,我们通过在OS X上使用这种方法在Chrome上从命令行向Chrome传递–disable-web-security选项,从而实现了跨域调用,但是它closures了所有的安全的铬(拇指向下),我们无法让Chrome作为一个新的实例发射。

– 结束 –

通过一些挖掘,我发现这个堆栈溢出发表 (通过这个职位的答案)给我一个很好的主意,我需要做什么来让grunt服务器允许跨域调用。 它基本上涉及添加一个中间件组件连接,以允许更改标题,以便“访问控制允许来源”设置为“*”或任何人喜欢。

对Node.js一无所知,我可以看到文章中提到的变化需要在Yeoman创build的许多文件中的某处进行,但是在哪里呢? 我已经在Yeoman设置的“node_modules”目录中对“app.configure”和“connect.listen”进行了一些原始stringsearch,但是我提出了许多命中,其中大部分来自模块捆绑的例子我不清楚应该编辑哪一个。 如果有帮助,这里是我的angular度应用程序的目录结构的快照:

在这里输入图像描述

如果任何人都可以给我一些关于这些变化可能的指示,我会很感激!

       

网上收集的解决方案 "允许与Yeoman(1.0)grunt服务器进行跨域调用"

解决了无用的节点在这个github拉请求的方法: http : //github.com/angular/angular.js/pull/1454

您可以使用Apache代理并使用gruntjs(angular.js)连接您的REST服务器。

Apache会这样做:

  • 代理/ – > gruntjs
  • 代理/服务 – > REST服务器

你会使用你的应用程序打Apache和angular.js应用程序会认为这是与自己交谈,所以没有跨域问题。

这里是一个伟大的教程如何设置: http : //alfrescoblog.com/2014/06/14/angular-js-activiti-webapp-with-activiti-rest/