我正在尝试使用用户输入的数据来使用节点对外部API进行api调用 . 我已成功从服务器发出呼叫,并将它们返回到角度 . 但我需要从angular发送服务器变量,让它调用,并将响应返回给我的视图 . 我是节点的新手,所以如果已经在某个地方得到了解答,我很抱歉 . 我环顾四周,一无所获 .
My html
<md-input-container class="md-block" flex-gt-sm>
<label>Player 1</label>
<input ng-model="player1.username">
</md-input-container>
<md-button ng-click="comparePlayers(player1, player2)">COMPARE!</md-button>
My controller function
$scope.comparePlayers = function(player1) {
Nerd.getPlayer(player1)
}
My 'Nerd' Service
smiteStats.factory('Nerd', ['$http', function($http) {
return {
getPlayer: function(playerName) {
$http.post('/api/getPlayer', playerName).success(function(data) {
console.log("sent to server"); //does not run
})
}
}]);
My Express Route
app.post('/api/getPlayer', GetPlayer.apiGetPlayer);
My node module that makes the api call
module.exports = {
apiGetPlayer: function(error, res, player) {
console.log(player); //this returns "[Function: next_layer] in my cmd
}
}
1 回答
要在POST中发送带$ http的参数:
要获取POST参数,您需要ExpressJS body-parser包 . 这将允许您从POST获取信息 .
Read more