CF接受cf2016中的JSON字符串,但不接受cf9

时间:2018-03-29 20:02:00

标签: json coldfusion coldfusion-9 coldfusion-2016

我正在调用API并需要向其发送带有凭据的JSON字符串。我们目前正在从CF9过渡到CF2016。在DEVL中我有两个版本。在测试和产品中我目前只有CF9。最初我编写代码并在CF2016上测试过,它工作正常。当我把它推到测试时,它没有用。我在DEVL中重试CF9,它也有错误。代码是:

<cfset logininfo = {"username": "eistech", "password": "#sat_pw#"}> 
<cfset fromdate=dateformat(DateAdd('d', -1, dat), "yyyy-MM-dd") & 'T00:00:00-0500'>

<!--- Get token info--->
<cfhttp url="https://scoresdownload.collegeboard.org/pascoredwnld/files/list?fromDate=#fromdate#" method="post"  result="finfo">
    <cfhttpparam name="Content-Type" type="HEADER" value="application/json">
    <cfhttpparam name="Accept" type="HEADER" value="application/json">
     <cfhttpparam type="body" value="#serializeJSON(logininfo)#">
</cfhttp>

在CF9中运行时,我得到:

  

第20行第5行找到无效的CFML构造.ColdFusion是   看下面的文字:   { (Line 20 is <cfset logininfo = {"username": "eistech", "password": "#sat_pw#"}>

我尝试用单引号将其括起来,但在两个实例中都失败了。如何在CF2016和CF9中使用它?

1 个答案:

答案 0 :(得分:10)

CF9不理解问题中JSON字符串中使用的:。 使用=

<cfset logininfo = {"username"= "eistech", "password"= "#sat_pw#"}>