将json传给cfhttpparam

时间:2017-02-10 17:41:30

标签: json coldfusion

我正在使用ColdFusion 2016,这就是我正在做的事情:

<cfhttp method="put" url="https://www.colorfulapi.com/testpage/#arguments.Name#" username="#request.APIusername#" password="#request.APIToken#" result="results">
    <cfhttpparam type="header" name="Content-Type" value="application/json">
    <cfif isStruct(arguments.structform) AND !StructIsEmpty(arguments.structform)>
    <CFHTTPPARAM VALUE="'#serializeJSON(stFields)#'" TYPE="body">
    </cfif>
  </cfhttp>

st是这样的:如果我抛弃它们

'{"ONE":{"GROUP":"my group"}}'

如果使用serializeJSON转到cfhttpparam,它会显示为:

"error":"JSON error: 822: unexpected token at ''{\"ONE\":{\"GROUP\":\"my  group\"}}''"}

我在POSTman中尝试了相同的代码,但在POSTman JSOn发送时我必须使用正文作为原始内容并选择内容为application/json并且它在那里工作

这就是我生成stFields的方式

<cfset stFields = StructNew()>
  <cfset stFields.one = arguments.structform>
  <cfdump var="'#serializeJSON(stFields)#'"> 

1 个答案:

答案 0 :(得分:1)

删除单引号:

_rescale_data

旧答案:

following logic序列化对象(结构,数组,查询,组件,简单值)并将内容输出为JSON字符串。 您的EN = ElasticNet() X, y = _rescale_data(X, y, sample_weight) EN.fit(X, y) 已经是JSON字符串,因此无需再次序列化它(

<CFHTTPPARAM VALUE="#serializeJSON(stFields)#" TYPE="body">