如何从json数据中删除\?

时间:2017-06-06 13:16:45

标签: javascript json wcf

我在我的角度项目中使用.net wcf服务,但我得到了这样的响应:

{
  "stateResult": "[{\"state_id\":\"1\",\"state_name\":\"Madhya Pradesh\",\"IsActive\":\"True\"},{\"state_id\":\"2\",\"state_name\":\"Gujrat\",\"IsActive\":\"True\"},{\"state_id\":\"3\",\"state_name\":\"Goa\",\"IsActive\":\"True\"},{\"state_id\":\"4\",\"state_name\":\"Maharashtra\",\"IsActive\":\"True\"}]"
}

但是期望的结果;

[{"state_id":"1","state_name":"Madhya Pradesh","IsActive":"True"},{"state_id":"2","state_name":"Gujrat","IsActive":"True"},{"state_id":"3","state_name":"Goa","IsActive":"True"},{"state_id":"4","state_name":"Maharashtra","IsActive":"True"}]

3 个答案:

答案 0 :(得分:1)

要将字符串转换为JSON,您可以使用JSON.parse(jsonString);,但如前所述,您应该发送JSON对象本身而不是字符串。

答案 1 :(得分:1)

您可以解析该结果,如下所示:

let result = {
  "stateResult": "[{\"state_id\":\"1\",\"state_name\":\"Madhya Pradesh\",\"IsActive\":\"True\"},{\"state_id\":\"2\",\"state_name\":\"Gujrat\",\"IsActive\":\"True\"},{\"state_id\":\"3\",\"state_name\":\"Goa\",\"IsActive\":\"True\"},{\"state_id\":\"4\",\"state_name\":\"Maharashtra\",\"IsActive\":\"True\"}]"
}
result = JSON.parse(result.stateResult);

答案 2 :(得分:0)

看起来json数据是双重编码的,例如在php中我错误地执行了php_encode()两次。

不确定问题是谁在进行编码,但看起来你也可以这样。