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

时间:2021-06-09 16:51:34

I started getting this problem when I installed ColdFusion 2016 Update 4.

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

HTML:

HTML:

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

Proxy:

代理:

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

Javascript:

使用Javascript:

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

CFC:

CFC:

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

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

I set a breakpoint on in my cfc and found that arguments.arg is blank and I have form.argumentcollection = {"arg":"X"}

我在cfc中设置了断点,发现arguments.arg为空,我有form.argumentcollection = {“arg”:“X”}

If I change setHTTPMethod from "post" to "get", arguments.arg = "X", as I would expect.

如果我将setHTTPMethod从“post”更改为“get”,arguments.arg =“X”,正如我所料。

I have a lot of code that has been working fine before this CF update, and now it's all broken :(

我有很多代码在这次CF更新之前一直运行良好,现在它已经全部坏了:(

Any help would be appreciated. Thanks in advance.

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

1 个解决方案

#1


4  

I found this patch that Adobe posted https://tracker.adobe.com/#/view/cf-4198589 , and it worked for me.

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

#1


4  

I found this patch that Adobe posted https://tracker.adobe.com/#/view/cf-4198589 , and it worked for me.

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