在cfhttpparam的值中传递JSON数据数组

时间:2014-07-02 16:22:56

标签: coldfusion coldfusion-9

我正在尝试以cfhttpparam的值传递JSON数据,如下所示:

Line #95: <cfhttpparam type="formfield" 
name="seriesofdata" 
value="[{"Id": 118,"Value": 1,"Desc": "Checking Description ","Group": 1}]"/> 

但我继续收到以下错误:

Invalid token " found on line 95 at column XX.

我已经检查了JSON及其作为值传递的有效JSON。

我做错了什么?

1 个答案:

答案 0 :(得分:7)

所以这肯定是有效的JSON:

{"Id": 118,"Value": 1,"Desc": "Checking Description ","Group": 1}

但是你将它包装在" "内,这样你的JSON数据包中的第一个"看起来就像是cfhttpparam值的结束"

<cfhttpparam type="formfield" name="seriesofdata" value="[{"Id": 118,"Value": 1,"Desc": "Checking Description ","Group": 1}]"/>
                                                           ^

向CF看起来像你一样:

<cfhttpparam 
    type="formfield" 
    name="seriesofdata" 
    value="[{"
    Id": 118,"Value": 1,"Desc": "Checking Description ","Group": 1}]"
/>  

整个最后一点看起来像垃圾,因此无效令牌&#39;错误。

要么逃避那些&#34;或者在JSON或CFML中使用单引号。

<cfhttpparam type="formfield" name="seriesofdata" value='[{"Id": 118,"Value": 1,"Desc": "Checking Description ","Group": 1}]'>