Как передать STRUCT - OR - JSON методу CFC Coldfusion

У меня есть существующий CFC, который отлично работает при передаче структур в метод.

Проблема в том, что теперь нам нужно передавать данные в ту же функцию через JSON.

Вот фрагмент CFC:

<cffunction 
  name="subscribeAPI" 
  access="remote" 
  returntype="struct" 
  returnformat="json" 
  output="false">

  <cfargument 
    name="structure" 
    type="struct" 
    required="true" 
    hint="data structure received from call">

<cfif StructKeyExists(arguments.structure, "listID") 
  AND len(arguments.structure.listID)>
 ...
</cfif>

<cfreturn LOCAL />

Вот как мы передаем структуру:

<cfset preStruct = {
  apiAction="Create",
  listID="1463",
  email="#form.cartEmail#",
  firstname="#form.first_name#",
  preCart="#now()#",
  planDescription="#application.name.site#"
  }
/>

<cfscript>voidReturn = application.goxObj.subscribeAPI(preStruct);</cfscript>

Теперь нам также нужно передать следующее, но, очевидно, получаем ошибки из-за того, что CFC ожидает структуру:

function HandleSubscribe(){
  $j.getJSON(
    "/com/list.cfc?wsdl",
    {
      method : "subscribeAPI",
      action : "Create",
      listID : $j( "#listID" ).val(),
      triggerKey : $j( "#triggerKey" ).val(),
      email : $j( "#emailNL" ).val(),
      firstname : $j( "#firstnameNL" ).val()
    },
  handleSubscribeCallback
);

}

Как мы можем успешно передать фрагмент getJSON?

Спасибо.

6
задан goxmedia 28 February 2012 в 20:52
поделиться