我收到了来自API的回复,但我无法访问此响应中的数组位置.
fileTransfer.upload(this.imageURI, environment.restUrl + "Upload/addIonic", options)
.then(data => {
console.log('data');
console.log(JSON.stringify(data));
let response;
console.log('bytesSent');
console.log(data.bytesSent);
response = data.response
console.log('response');
console.log(response);
console.log('response[0]');
console.log(response[0]);
});
Run Code Online (Sandbox Code Playgroud)
控制台返回:
console.log: bytesSent
[19:51:03] console.log: 1168539
[19:51:03] console.log: response
[19:51:03] console.log:
[{"fd":"445bcc46-ad55-4079-95d0-9b0deaab7c4c","size":1168430,"type":"image/jpeg","filename":"ionicfile","status":"finished","field":"ionicfile","extra":{"Location":"https://easy-move.s3.amazonaws.com/445bcc46-ad55-4079-95d0-9b0deaab7c4c","Bucket":"easy-move","Key":"445bcc46-ad55-4079-95d0-9b0deaab7c4c","ETag":"\"69ede2190589f905ee8590446caf1cf7-1\"","size":1168430}}]
[19:51:03] console.log: response[0]
[19:51:03] console.log: [
Run Code Online (Sandbox Code Playgroud)
而是返回一个对象,该数组只返回位置为零的"[".
response显然是一个JSON字符串,而不是一个数组,所以response[0]返回字符串的第一个字符.使用:
response = JSON.parse(data.response);
Run Code Online (Sandbox Code Playgroud)
如果您可以控制API,则应该调查它为什么编码此元素,而不是在编码整个数据时将其保留为数组.很少需要像这样的双重编码.
| 归档时间: |
|
| 查看次数: |
41 次 |
| 最近记录: |