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)#"/>
那么我迷失的是我在 cfc 中最初存储 JSON 数据的 cfargument 名称是什么?我无法控制发送 JSON 数据的远程服务。
谢谢,
This is the first time I'm writing a cfc that will catch JSON data from an external web server that would be posting information.
I'm working with a new service that can be set to send us, via HTTP POST to a URL I specify, a JSON packet of information regarding failed transactions.
I figured I'd setup a CFC with remote access to capture and deserialize the JSON data into something we could then act on. However, I can't figure out how to setup the function in the CFC to received the data?
I set the URL to www.mydomain.com/com/processRemote.cfc?method=catchJSONdata&ReturnFormat=json
To test it, I setup a simple test page that should post session data:
<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)#"/>
So where I'm lost is what's the cfargument name that I'd have in my cfc that I would initially store the JSON data in? I have no control over the remote service that would be sending the JSON data.
Thanks,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您正在从 HTTP 请求正文中读取内容,您将不会在参数范围中找到它 - 您需要直接从请求中提取它:
我使用 Taffy[1] 框架来构建这样的服务(免责声明:我实际上帮助了编写处理这种情况的框架部分)。
[1] http://atuttle.github.com/Taffy/
If you're reading content from the HTTP request body you wont find it in arguments scope - you'll need to extract it directly from the request:
I use the Taffy[1] framework for building services like this (Disclaimer: I actually helped write the part of the framework that handles this case).
[1] http://atuttle.github.com/Taffy/