我正在使用离子与谷歌云功能,当我将数据返回到我的应用程序时,角度默认为将其作为错误处理。
这是我使用节点回调的云函数: 我已经尝试过将有花括号添加到有效载荷中,但它没有帮助。
function (error, response, body) {
let payload = parser.toJson(body, parserOptions);
console.log(payload)
res.status(200).send(payload);
}
在该回叫的控制台日志中,我得到:
{
ResponseCode: '0',
referenceID: '22072017152436718488608295',
ResponseMessage: 'SUCCESS',
paymentURL: 'url',
net_amount: '0',
invoiceNumber: '0',
status: '200'
}
我期望在Angular / Ionic代码中收到哪些数据。 在Postman中测试这个也是有效的。
Angular Code:
return this.http.post('/api', body, headers)
.map(res => res.json())
.subscribe(
data => {
console.log('Success')
console.log(data)
},
err => {
console.log('Error')
console.log(err.status)
console.log(err.message)
}
)
我的错误状态为0,错误消息为null。
答案 0 :(得分:0)
这看起来像similarly here for angularjs描述的CORS错误,并在this answer for Angular 2中有更多解释
解决方案是添加一个头服务器端来处理CORS。