ionic4 cordova插件http.get接收json,预计会提供json,但会提供字符串

时间:2019-02-27 13:18:39

标签: json cordova cordova-plugins ionic4

服务是

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似乎不可用。所以第二个问题是:我做错了什么,还是错过了?

离子V4.10.3 科尔多瓦8.1.2 最近几天安装的插件 平台:Windows 10,Java 8 Cordova中设置的平台:浏览器,Android

摘要:

A。)如何用json中的响应履行承诺 B.)如果不可能,那么当JSON.parse()不可用时如何将字符串转换为JSON,或者如何使JSON.parse()在我的项目中可用?

1 个答案:

答案 0 :(得分:0)

经过2天的摆弄,我很失望,因此关闭了所有窗口,命令行等。最后,我在任务管理器中杀死了node.js服务。后来冒烟了,我开始了新的尝试。可以说,JSON现在可用,Promise可以按预期方式工作-但两者都仍被Visual Studio Code标记为“未知”。当我想到这个时,Visual Studio Code开始为我提供更新。我去了。

该说些什么:更新有帮助,有时您和您的机器都休息一下也可以帮助解决问题。也许这有助于将来的可怜人。

相关问题