内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用
服务是
import { Injectable } from '@angular/core';
import { HTTP, HTTPResponse } from '@ionic-native/http/ngx';
import { Promise } from 'q';
@Injectable({
providedIn: 'root'
})
export class YfapiService {
private baseUrl: string;
constructor(private http: HTTP) {
this.baseUrl = "valid url delivering some json";
}
public getDriverDetails(driverKey: string): Promise<HTTPResponse> {
return Promise((resolve, reject) => {
this.http.get(this.baseUrl, {}, {})
.then(response => resolve(response.data))
.catch(error => reject(error));
});
}
};
url是有效的东西,并提供了内容类型为application / json的json。但是,在“响应”中有“数据”,而response.data总是包含从远程服务接收的json的字符串。如何把它变成json?
JSON.parse似乎不可用。所以第二个问题是:我做错了什么或者我错过了什么?
Ionic V4.10.3 Cordova 8.1.2过去几天安装的插件平台:windows 10,java 8在Cordova中设置的平台:浏览器,android
摘要:
A.)如何在json B中通过响应来实现promise。)如果这不可行,那么当JSON.parse()不可用时如何将字符串转换为JSON,或者如何在我的JSON.parse()中使用JSON.parse()项目?
经过2天的摆弄,我很失望,因此关闭了所有窗口,命令行等。最后我在任务管理器中杀死了node.js服务。一阵烟后,我开始了新的尝试。怎么说,JSON现在可用,Promise按预期工作 - 但两者仍然被Visual Studio Code标记为“未知”。当我想到这一点时,Visual Studio Code开始向我提供更新。
说什么:更新帮助,有时候为你和你的机器休息也有助于解决问题。