我正在使用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))#}'>
但没有帮助,你们能指出正确的方向
答案 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>