与Ember js的REST API调用

时间:2016-12-26 12:16:34

标签: javascript rest tomcat ember.js ember-data

如何在Ember模板(hbs)中使用任何rest api(json)。我在apache tomcat上部署了一个服务,我想在ember js中使用它的响应。我尝试了所有在线提供的东西,但没有运气。

以下是我的代码段;

-----------app\adaptors\application.js--------------------
    import DS from 'ember-data';
    import Ember from 'ember';

    var App = window.App = Ember.Application.extend();

    App.UserAdapter = DS.RESTAdapter.extend({
      find: function(){
          return Ember.$.getJSON('http://localhost:8082/emberTestService');
        }
    });
--------------routes\user.js----------------------
    import Ember from 'ember';

    var App = window.App = Ember.Application.extend();

    App.UserRoute = Ember.Route.extend({

      model: function(){
        var adapter = App.UserAdapter.create();
        return adapter.find();
      }
    });
-------------templates\application.hbs---------------
    <h1>Welcome in app</h1>
    {{log 'Name is:' name}}
    {{name}}

服务http://localhost:8082/emberTestService返回{   &#34; name&#34;:&#34; Tomcat&#34; } 我希望这个回复能够在我的模板上返回。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我已经通过从服务端更改json响应类型来解决了这个问题。服务http://localhost:8082/emberTestService返回{&#34;名称&#34;:&#34; Tomcat&#34;但是ember需要[{&#34; name&#34;:&#34; Tomcat&#34; }]

我使用String userResponseListValue = "[ " + gson.toJson(listMap) + " ]";来制作上面提到的json响应。