不确定如何从自定义端点检索数据?
Unsure how to retrieve data from a custom endpoint?
此 post 的背景是我是一名 java 试图自学 Ember 的开发人员。进展不顺利。我意识到这个问题很模糊所以我道歉,我什至不确定我应该问什么...
我需要将数据从 heroku json 端点提取到模型中,即通过某种查询。在 application.js 文件中,我有以下内容:
import DS from ‘ember-data’;
export default DS.JSONAPIAdapter.extend({
host: 'https://cag-brain.herokuapp.com'
});
理想情况下,我想将这些数据提取到用户模型中,然后在页面上显示该数据作为一种概念证明。不幸的是,这让我一无所获。我什至不确定我是否正确地处理了这件事。我应该做一些不同于尝试使用主机自定义的事情吗?任何指导都将 非常 感激不尽!
通过 ember-data 检索记录涉及不同的事情。
首先你应该define your models:
// app/models/post.js
import DS from 'ember-data';
export default DS.Model.extend({
title: DS.attr('string')
});
您应该检索 model
hook of a route
中的记录。
// app\routes\posts.js
import Route from '@ember/routing/route';
export default Route.extend({
model() {
return this.get('store').findAll('post');
}
});
然后你应该配置你的api host and maybe a namespace。您在问题中包含了该步骤:
// app/adapters/application.js
import DS from ‘ember-data’;
export default DS.JSONAPIAdapter.extend({
host: 'https://cag-brain.herokuapp.com'
});
如果您的 api 没有实现 JSON Api specification you need to customize your serializer and adapter. Ember-data ships with a RESTAdapter/RestSerializer additionally to the default adapter and serializer which implements JSON Api spec. There is also one abstract adapter and serializer If you need to start from scratch. Before that I would definitely have a look if there is any community adapter/serializer 满足您的需求。
为了分离 api 和客户端开发并加快测试速度,我建议使用 ember-cli-mirage,它允许您模拟 api.
此 post 的背景是我是一名 java 试图自学 Ember 的开发人员。进展不顺利。我意识到这个问题很模糊所以我道歉,我什至不确定我应该问什么...
我需要将数据从 heroku json 端点提取到模型中,即通过某种查询。在 application.js 文件中,我有以下内容:
import DS from ‘ember-data’;
export default DS.JSONAPIAdapter.extend({
host: 'https://cag-brain.herokuapp.com'
});
理想情况下,我想将这些数据提取到用户模型中,然后在页面上显示该数据作为一种概念证明。不幸的是,这让我一无所获。我什至不确定我是否正确地处理了这件事。我应该做一些不同于尝试使用主机自定义的事情吗?任何指导都将 非常 感激不尽!
通过 ember-data 检索记录涉及不同的事情。
首先你应该define your models:
// app/models/post.js
import DS from 'ember-data';
export default DS.Model.extend({
title: DS.attr('string')
});
您应该检索 model
hook of a route
中的记录。
// app\routes\posts.js
import Route from '@ember/routing/route';
export default Route.extend({
model() {
return this.get('store').findAll('post');
}
});
然后你应该配置你的api host and maybe a namespace。您在问题中包含了该步骤:
// app/adapters/application.js
import DS from ‘ember-data’;
export default DS.JSONAPIAdapter.extend({
host: 'https://cag-brain.herokuapp.com'
});
如果您的 api 没有实现 JSON Api specification you need to customize your serializer and adapter. Ember-data ships with a RESTAdapter/RestSerializer additionally to the default adapter and serializer which implements JSON Api spec. There is also one abstract adapter and serializer If you need to start from scratch. Before that I would definitely have a look if there is any community adapter/serializer 满足您的需求。
为了分离 api 和客户端开发并加快测试速度,我建议使用 ember-cli-mirage,它允许您模拟 api.