【发布时间】:2013-09-03 15:56:52
【问题描述】:
我有一个外部 RESTful 端点,我正试图在我的 CompoundJS 应用程序中构建一个模型。我对几件事有点困惑:
- 如何使用外部 RESTful API 构建模型(大多数模型似乎都以数据库为中心)?
- 访问此 RESTful API 的最佳方式是什么?
现在,我正在这样做:
var options = {
host: 'api.local',
port: 80,
path: '/users',
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
};
var http = require('http');
http.get(options, function(res) {
var output = "";
res.on('data', function(chunk) {
output += chunk;
});
res.on('end', function() {
var obj = JSON.parse(output);
send({code: 200, data: obj});
});
});
obj 实际上返回了我所有的用户数据(但在 JSON 中)。返回的 JSON 如下所示:
{
time: integer,
count: integer,
data: [{
userid: string,
name: string,
email: string
}, {
userid: string,
...
}]
}
JSON 非常棒,但我很想将它加载到模型中,所以我想我会有一个包含 time(整数类型)、count(整数类型)的外部模型, 和 data (类型为数组)。然后我有一个内部模型(我们称之为User),它包含userid(字符串类型)、name(字符串类型)和email(字符串类型)。然后我必须将data 与拥有许多User 模型相关联。我希望有类似Ext JS does it 的东西。
那么,如何根据这个 RESTful 端点的返回来构建模型,以及从端点获取这些数据的最佳方式是什么?我当前的代码是否高于获取数据的最佳路径,或者我可以使用我在Schema.js 中创建的模型设置更简洁的方法?理想情况下,我可以在 Schema.js 中创建一个模型,将其与 RESTful API 挂钩,然后执行正常的 GET/POST 操作。
任何帮助将不胜感激!
【问题讨论】:
标签: node.js api rest compoundjs railway.js