JSON响应问题

时间:2014-09-20 20:11:10

标签: json coldfusion

我正在使用coldFusion inbuild SerializeJSON从Array获取数据到JSON,如下所示:

<cfset retData = '{"username":"#session.username#","items":#serializeJson(items)#}'>

这样我就得到了回复:

{"username":"user1","items":["{\"s\": \"1\",\"f\": \"El\",\"m\": \"How are you\"}"]} 

我尝试使用backslashes移除jsStringFormat,但没有帮助..

尝试过这样:

<cfset retData = '{"username":"#session.username#","items":#serializeJson(jsStringFormat(items))#}'>

但没有帮助,你们能指出正确的方向

2 个答案:

答案 0 :(得分:2)

不要将其设置为字符串。首先将其设为结构,然后调用serializeJSON()。根据数据,似乎items已经是一个结构。

<cfset refData = { 'username' = '#session.username#', 'items' = #items# } />
<cfset refData = serializeJSON( refData ) /> 

答案 1 :(得分:0)

使用&#39; deserializeJson&#39;。 它可能对你有帮助。

<cfset items = '["{\"s\": \"1\",\"f\": \"El\",\"m\": \"How are you\"}"]'>
<cfset items = #deserializeJson(items)#>
<cfset retData = '{"username":"user1","items":#serializeJson(items)#}'>
<cfoutput >
    #retData#
</cfoutput>