我确定已经多次提出并回答了类似的问题,但我想我没有正确写出这个问题,因为我还没有找到任何对我有用的回复。
我正在使用Node发送API请求,并将数据返回到我的角度应用程序中:
app.get('/personInfo/:personName', function(req,res){
Module.Person.getByName(req.params.personName)
.then(function (person) {
res.json(person);
});
});
该应用程序通过以下脚本包含响应:
$scope.submit = function(){
$http.get('/personInfo/' + $scope.person.name).success(function(response){
console.log(response);
});
};
($ scope.person链接到我的.html文件的某些字段,似乎工作正常)
我得到了回来(假设我通过$ scope.person.name传递了johnny)
johnny:Object
__proto__:Object
第一个对象包含我想要的数据......因此我无法直接访问其属性。
我无法对此执行简单的response.id, response.name, response.profileIconId
等等...我必须像这样访问它:
response.johnny.property
......显然......
我做错了什么?我可以使用某种形式的格式化或解析,无论是在服务器级别还是客户端级别,这将允许我直接访问对象的属性而无需指定动态父级?
答案 0 :(得分:0)
好的,这似乎有用......
我通过测试找到了person.x(x = personName param)按照我想要的方式返回对象 - 所以我每次都需要做person.personName,所以既然我不知道知道名字,只需传入一个与参数匹配的未知属性,它就可以了!
res.json(人[req.params.personName]);
返回:
Object {id: 19897772, name: "Johnny", profile: 937, rank: 12, revisionDate: 1463522178000}
我现在可以做response.id,name,profile etc.
...