当通过cfajaxproxy从javascript调用时,cfc函数不接收参数

时间:2017-08-30 17:23:24

标签: javascript ajax parameters coldfusion

当我安装ColdFusion 2016 Update 4时,我开始遇到此问题。

HTML:

<input type='button' name='btn' value='Click me' onclick='proxyFunc();'>

代理:

<cfajaxproxy cfc='proxy' jsClassName="jsProxyClass" >

Javascript:

proxyFunc = function () {
  var proxyObj = new jsProxyClass();
  proxyObj.setHTTPMethod("post");   
  proxyObj.setCallbackHandler (function (result) {
      console.log(result);
  });
  proxyObj.func('X');
}

CFC:

<cffunction name='func' access='remote' returntype='string' >
  <cfargument name='arg' type='string' required='false' >

  <cfreturn 'What is my arg? ' & arguments.arg>
</cffunction>

我在cfc中设置断点,发现arguments.arg为空 我有form.argumentcollection = {&#34; arg&#34;:&#34; X&#34;}

如果我从&#34更改setHTTPMethod;发布&#34; to&#34; get&#34;,arguments.arg =&#34; X&#34;,正如我所料。

我有很多代码在CF更新之前一直运行良好,现在它已经完全崩溃了:(

任何帮助将不胜感激。提前谢谢。

1 个答案:

答案 0 :(得分:4)

我发现Adobe发布了https://tracker.adobe.com/#/view/cf-4198589这个补丁,它对我有用。