coldfusion - 接收发布的JSON数据并解析它

Ste*_*eve 8 coldfusion json cfc

这是我第一次编写cfc,它将从外部Web服务器捕获JSON数据,这些数据将发布信息.

我正在使用一种新服务,可以设置为通过HTTP POST将我们发送到我指定的URL,以及有关失败事务的信息的JSON数据包.

我想我已经设置了一个具有远程访问权限的CFC来捕获和反序列化JSON数据,然后我们可以采取行动.但是,我无法弄清楚如何在CFC中设置函数来接收数据?

我将URL设置为www.mydomain.com/com/processRemote.cfc?method=catchJSONdata&ReturnFormat=json

为了测试它,我设置了一个应该发布会话数据的简单测试页面:

<cfhttp 
  result="result"
  method="post" 
  url="http://www.mydomain.com/com/processRemote.cfc?method=catchJSONdata&ReturnFormat=json">

    <cfhttpparam type="header" name="content-type" value="application/json"/>
    <cfhttpparam type="body" value="#serializeJSON(session)#"/>
Run Code Online (Sandbox Code Playgroud)

那么我迷失的地方是我在我的cfc中最初存储JSON数据的cfargument名称是什么?我无法控制将发送JSON数据的远程服务.

谢谢,

bpa*_*lla 11

如果您正在从HTTP请求主体中读取内容,则不会在参数范围内找到它 - 您需要直接从请求中提取它:

if (cgi.content_type EQ "application/json")
{
    myData = deserializeJSON(ToString(getHTTPRequestData().content));
}
Run Code Online (Sandbox Code Playgroud)

我使用Taffy [1]框架来构建这样的服务(免责声明:我实际上帮助编写了处理这种情况的框架部分).

[1] http://atuttle.github.com/Taffy/