我有一个应用程序可以调用api并显示有关该信息的数据:首先,它从客户端的输入中获取用户名并将其发布到服务器。在这一步中,如果我检查数据是否已经发送到服务器,一切似乎都很好。
AngularJs part:
var app=angular.module("app",[])
app.controller("InfoController",['$scope','$log','$http','$filter',function($scope,$log,$http,$filter){
$scope.info = {
summonerName: '',
};
$scope.info.onClick = function(){
$scope.info.summonerName = $scope.info.summonerNameBox;
$http.post('/api/getSummonerName', $scope.info);
$http.get('/api/summonerData')
.success(function(data, status){
$scope.info.display = data;
}).error(function(data,status){
alert("Error: " + status);
});
};
}])
的NodeJS:
var summonerName;
var summonerId = '';
app.post('/api/getSummonerName', function (req, res){
summonerName = req.body.summonerName;
console.log("Post getSummonerName " + summonerName);
});
app.get('/api/summonerData', function(req,res){
LolApi.Summoner.getByName(summonerName, function(err, summoner) {
if(!err) {
res.json(summoner);
summonerId = req.body.summoner;
console.log(summonerId);
if(err)
res.send(err)
}
})
});
当我在服务器中有这些数据时,我打电话给api获取该用户的信息,一切都很顺利。
当我想要存储来自此json的特定字段时,问题就出现了。当我想将它存储在一个变量中时,我得到的一切都是“未定义的”:/(一旦我获得了“[Object object]”,但又无法获得它了......)
有什么想法吗?
谢谢大家。
答案 0 :(得分:0)
在我看来,这不是你应该这样做的方式。
如果你想要召唤召唤师,你需要使用get方法。 特别是如果你正在与多个用户打交道。
您可能希望在此答案中指定的get请求中传递数据,并抛弃帖子请求: AngularJS passing data to $http.get request
这样,你就不依赖于记忆,你可以模块化它:)