【发布时间】:2016-10-11 17:57:00
【问题描述】:
我想在访问此 URL 时返回电话号码(仅限):
api/customers/57579110f686f6e11dac4b17/phone
我可以从此 URL 获取以下 JSON:
api/customers/57579110f686f6e11dac4b17
(整个 JSON 结构):
{"_id":"57579110f686f6e11dac4b17","phone":"5555555","lastname":"Lname","firstname":"Fname","__v":0,"address":{"zip":"17837","state":"Pennsylvania","city":"gvkgv","street":"bxihe"}}
我可以通过这个网址获取地址:
api/customers/57579110f686f6e11dac4b17/地址
{"street":"bxihe","city":"gvkgv","state":"Pennsylvania","zip":"17837"}
我什至可以得到街道:
api/customers/57579110f686f6e11dac4b17/address/street
"bxihe"
但我无法仅从这里获得电话号码:
api/customers/57579110f686f6e11dac4b17/电话
为什么?
我该怎么做呢?
我的代码:
api.js - 链接到 server.js
router.get('/customers/:id', function(req, res) {
Customer.findOne({_id: req.params.id}, function(err, data) {
res.json(data);
})
})
router.get('/customers/:id/phone', function(req, res) {
Customer.findOne({_id: req.params.id}, function(err, data) {
res.json(data);
})
})
router.get('/customers/:id/address', function(req, res) {
Customer.findOne({_id: req.params.id}, function(err, data) {
res.json(data.address);
})
})
router.get('/customers/:id/address/street', function(req, res) {
Customer.findOne({_id: req.params.id}, function(err, data) {
res.json(data.address.street);
})
})
Api.js - 用于前端 - (Angular.js)
myApp.factory('Api', ['$resource', function($resource) {
return {
Customer: $resource('/api/customers/:id', {id: '@id'})
}
}]);
myApp.factory('Api', ['$resource', function($resource) {
return {
Customer: $resource('/api/customers/:id/address', {id: '@id'})
}
}]);
myApp.factory('Api', ['$resource', function($resource) {
return {
Customer: $resource('/api/customers/:id/address/street', {id: '@id'})
}
}]);
谢谢
【问题讨论】:
标签: angularjs json node.js mongodb