JSON - 如何将纯格式转换为json格式?

时间:2014-06-20 09:57:57

标签: javascript json ibm-mobilefirst worklight-adapters

我从worklight适配器调用后得到了响应。

  

{" text":" {\ n \" responseCode \" :\" 00 \",\ n \" responseMsg \" :null,\ n   \" buildFromAccountsMap \" :{\ n \" 1000071000005844 D \" :   \" 1000071000005844 \",\ n \" 1000791000030636 D \" :   \" 1000791000030636 \",\ n \" 1001911000036935 D \" :   \" 1001911000036935 \",\ n \" 1002021000029411 D \" :   \" 1002021000029411 \",\ n \" 1005071000029666 D \" :   \" 1005071000029666 \",\ n \" 1005071000033139 D \" :   \" 1005071000033139 \",\ n \" 1005071000037533 D \" :   \" 1005071000037533 \",\ n \" 1005071000038605 D \" :   \" 1005071000038605 \",\ n \" 1005071000045298 D \" :   \" 1005071000045298 \",\ n \" 1005071000045517 D \" :   \" 1005071000045517 \",\ n \" 1005071000046989 D \" :   \" 1005071000046989 \",\ n \" 1005071000056183 D \" :   \" 1005071000056183 \",\ n \" 1005491000019560 D \" :   \" 1005491000019560 \",\ n \" 2000071000163308 S \" :   \" 2000071000163308 \",\ n \" 2000071000163361 S \" :   \" 2000071000163361 \" \ n}}

我的工作灯适配器

function buildFromAccounts(userId) {
    path = "xxxxxxxxxxxxxxxxx";

    var input = {
        method : 'post',
        returnedContentType : 'plain',
        path : path,
        body:{
            contentType:'application/json; charset=UTF-8',
            content:
                JSON.stringify({
                    "userId": userId.toString()

                })
            }
    };


    return WL.Server.invokeHttp(input);
}

问题是,如何在worklight中将这种普通格式转换为json格式?

2 个答案:

答案 0 :(得分:2)

您为returnedContentType设置了什么? JSON还是普通的?

编辑:因为你正在回归... ... 尝试类似于以下内容的内容:var obj = JSON.parse(response.text)

答案 1 :(得分:1)

看起来你的后端返回json。没有理由把它当成明文。变化

returnedContentType : 'plain' 

returnedContentType : 'json' 

(可选 - 完全忽略此属性,WL服务器将尝试自动检测响应类型)

选项#2 - 您可以随时使用

var jsonObj = JSON.parse(jsonString);