在ember js中从多个Web服务获取数据的最佳方法是什么?

时间:2016-10-29 03:03:15

标签: javascript ember.js

我正在构建一个网站,该网站使用来自不同服务器上五种以上不同Web服务的数据。我不知道开始工作的最佳方式是什么...... 例:    我必须从以下信息加载信息:

  1. http://api.example1.com
  2. http://api.example2.com
  3. http://api.example3.com
  4. 等......

2 个答案:

答案 0 :(得分:2)

为了在同一条路线上获取数据,你可能会做这样的事情(来自Ember文档):

        export default Ember.Route.extend({
          model() {
            return Ember.RSVP.hash({
              songs: this.store.findAll('song'),
              albums: this.store.findAll('album')
            });
          }
        });

要与这些API进行交互,我假设您还将拥有API密钥等处理。在这种情况下,您将希望为您与之交互的每个API运行'ember generate adapter resourceName'并填写它们,如下所示(取自Ember Data docs - 我假设您使用的是Ember数据):

import DS from 'ember-data';

export default DS.RESTAdapter.extend({
  host: 'https://api.example.com',
  headers: {
    "API_KEY": "secret key",
    "ANOTHER_HEADER": "Some header value"
  }
});

答案 1 :(得分:1)

Ember.RSVP.allSettled,这API可能合适。