2017-05-22 92 views
0

我从web API成功获取json数据。它正确地记录到服务器控制台,但是当我将它传递给客户端时,它将作为空白[]如何将此json数据从服务器传递到控制器? Nodejs/AngularJS

我在做什么错?

app.get('/balance', function(req, res) { 
 

 
    var poloniexExchange = new Cryptox(
 
    "poloniex", { 
 
     key: 'IGVRQCXB', 
 
     secret: '93b5686d9ef' 
 
    }); 
 

 
    //get all account balances 
 
    poloniexExchange.getBalance({ 
 
    account: 'all' 
 
    }, function(err, balance) { 
 
    if (err) 
 
     console.log(err); 
 
    if (!err) 
 

 
     console.log(balance.data[0].total); //logging all json data 
 
    res.json(balance.data[0].total); 
 
    }); 
 
});

app.controller('websocketController', function($scope, $http) { 
 

 
    $http.get("/balance") 
 
    .then(function(response) { 
 

 
     console.log(response.data); //logging '[]' 
 

 
    }); 
 
});

我需要从服务器传递到balance.data[0].total控制器。我做错了什么,我该如何做这项工作?

回答

0

下面是一个问题:你是否在你正在查询的计算机上运行你的开发服务器? 如果是这样的话:您的问题可能是您需要在服务器上包含以下标题系列。

res.header("Access-Control-Allow-Origin", "*"); 
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); 

如果我没有记错,基本的理由是,大多数Web客户端不喜欢从本地的HTTP请求接受回复,如果他们不是全部来自同一个域,所以他们需要这个确认的另一层不是攻击。查看跨域攻击以了解更多信息。

请记住,*表示它将随任何东西一起移动,因此您需要获取特定的值才能接受该值,或者将其删除并避免在尝试运行之前从服务器主机运行查询运送生产代码。

相关问题