2

有没有人成功地使用 Ember.js 使用前端应用程序并使用来自外部主机的端点?如果是这样,请分享您的经验。

这里有几个选项。

  • 通过本地代理发出请求(只是通过)。
  • 使用代理 + Rails,这样您就可以按照 Ember.js 想要的方式工作。
  • 使用 CORS 请求来解决 XSS 问题。

似乎 Ember.js 的规范方法是使用本地 Rails 应用程序将 json 提供给 Ember.js 应用程序。从我的团队所做的研究来看,CORS 似乎不是使用 Ember.js 的常用方法。

编辑:

关于下面的评论,这实际上更多是如何将 Ember-data 与外部 api 一起使用而不是 Ember.js 本身的问题。

4

2 回答 2

2

服务器-客户端通信不是 Ember.JS 为您解决的问题,它为此使用 jQuery,因此对 Ember.JS 方面不应该有任何限制。

您列出的所有内容都是处理来自不同域的 API 的合法方式,具体取决于您想要实现的用户代理支持(某些客户端根本不支持 CORS,或者以有限的形式)。

于 2012-10-04T15:38:23.870 回答
0
              **Approach 1**

如果您查看此博客文章:http ://eng.netwallet.com/2012/04/17/simple-cross-domain-ajax-with-a-wormhole-5/

在主机页面上,他们使用 porthole.js 和一个 Ember 对象,该对象设置 porthole windowProxy 并侦听来自它的消息。

Porthole.js 是一个小型 Javascript 库,可以安全且轻松地与跨域 iFrame 进行通信。

您始终可以在 ember-data 和 RestAdapter 中使用这种方法来覆盖提到的 gryzzly 之类的东西。

           **Approach 2**

同样在下面的帖子中,他们使用 goliath 作为代理来处理 ember-data 和 elasticsearch,但使用他们自己的自定义适配器

http://www.elasticsearch.org/tutorials/2012/08/22/javascript-web-applications-and-elasticsearch.html

帖子的全部代码在这里:https ://gist.github.com/3369662

于 2012-12-08T07:23:51.480 回答