angular/离子处理成功200作为一个错误
我使用离子与谷歌云function,当我将数据返回到我的应用程序angular度默认为处理它作为一个错误。
这里是我使用节点callback我的云function:我已经尝试添加大括号到有效载荷,但它没有帮助。
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代码中收到哪些数据。 在邮递员testing这个工作也是。
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和错误消息为空。
这看起来像是一个CORS错误, 在这里为angularjs类似地描述,在Angular 2的这个答案中有更多的解释
解决scheme是添加一个头部服务器端来处理CORS。
- 将angular2-webpack-starter与NodeJS API REST集成
- Angular2应用程序初始加载问题。 typescript.js文件是4.75MB
- 如何在请求的资源上出现“Access-Control-Allow-Origin”标题。 原因'null'因此不被允许访问。 在angular4?
- 如何在Angular CLI中configuration代理
- search数组Mongoose中的对象
- Angular 4:POST请求到本地主机上的REST API后发生未知错误
- Angular 2 + Zone.js +常见的js模块:IF语句exception,即使在假的情况下也执行代码
- 错误TS2304:找不到名字'Promise'
- 通过shell命令在Node.js中执行同步事件