【发布时间】:2016-05-12 19:45:58
【问题描述】:
多年来,我一直在使用 Authorize.net AIM 集成方法,并使用自定义构建的 ColdFusion 组件 (CFC)。我想尝试使用新的 API 并更新我的 CFC 以使用它。
以前,所有交易数据都作为单独的字段传递,您可以将这些字段发布到 Authorize.net。
例如:x_login、x_tran_key 等...看起来像这样:
<cfhttpparam name="x_login" type="formfield" value="xxx" />
<cfhttpparam name="x_tran_key" type="formfield" value="xxx" />
使用新 API,我从开发人员文档中注意到的最大变化是所有事务数据都封装为单个 XML(或 JSON)变量,然后发布。但是,我在文档中的任何地方都看不到包含 XML(或 JSON)数据的新表单字段名称应该是什么!
以下是流程的工作原理:
<!--- Create my XML request data:--->
<cfxml variable="xmlRequest">
<createTransactionRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
<merchantAuthentication>
<name>xxx</name>
<transactionKey>xxx</transactionKey>
</merchantAuthentication>
<refId>xxx</refId>
<transactionRequest>
<transaction request data goes here>
</transactionRequest>
</createTransactionRequest>
</cfxml>
然后我使用 CFHTTP 将数据发布到 Authorize.net:
<cfhttp url="https://secure2.authorize.net/gateway/transact.dll" method="post">
<cfhttpparam type="header" name="Content-type" value="application/x-www-form-urlencoded" />
<cfhttpparam name="????" type="formfield" value="#ToString(requestXML)#" />
</cfhttp>
如您所见,我不知道如何为 XML 数据指定 httpparam 名称。
任何帮助将不胜感激。
【问题讨论】:
-
可能是“正文” - 但让我看看我是否有一些示例代码。