我目前有一个使用Authorize.net的ARB API的应用程序。我知道应该如何工作,但我真的希望收到来自authorize.net测试服务器(test.authorize.net)的无声帖子,这是我的帐户创建的地方。
我关闭了测试模式,并且事务没有启用调试。有了这个,我已经写了一个页面,我可以模拟帖子,但我还没有看到一个。
创建订阅或卡收费时是否会发生这种情况?我已阅读多个项目,说在各种测试模式下,不会发送静音帖子。
在test.authorize.net上使用ARB时,有没有办法强制事务执行静默帖子?
谢谢, 埃里克
答案 0 :(得分:9)
如果不运行实时交易,则无法通过Authnet测试Silent Post。但是,自己测试Silent Post脚本非常简单。所有Silent Post正在做的是POST事务数据,这与AIM API响应完全相同(有一个例外:您还获得了ARB事务的订阅ID)。因此,要测试它,您需要做的就是重新创建模拟POST。这样做就像制作具有相同数据的mick表单并将操作设置为Silent Post URL一样简单。
以下是我使用的示例表单:
<form action="http://www.yourdomain.com/silent-post.php" method="post">
<input type="hidden" name="x_response_code" value="1"/>
<input type="hidden" name="x_response_subcode" value="1"/>
<input type="hidden" name="x_response_reason_code" value="1"/>
<input type="hidden" name="x_response_reason_text" value="This transaction has been approved."/>
<input type="hidden" name="x_auth_code" value=""/>
<input type="hidden" name="x_avs_code" value="P"/>
<input type="hidden" name="x_trans_id" value="1821199455"/>
<input type="hidden" name="x_invoice_num" value=""/>
<input type="hidden" name="x_description" value=""/>
<input type="hidden" name="x_amount" value="9.95"/>
<input type="hidden" name="x_method" value="CC"/>
<input type="hidden" name="x_type" value="auth_capture"/>
<input type="hidden" name="x_cust_id" value="1"/>
<input type="hidden" name="x_first_name" value="John"/>
<input type="hidden" name="x_last_name" value="Smith"/>
<input type="hidden" name="x_company" value=""/>
<input type="hidden" name="x_address" value=""/>
<input type="hidden" name="x_city" value=""/>
<input type="hidden" name="x_state" value=""/>
<input type="hidden" name="x_zip" value=""/>
<input type="hidden" name="x_country" value=""/>
<input type="hidden" name="x_phone" value=""/>
<input type="hidden" name="x_fax" value=""/>
<input type="hidden" name="x_email" value=""/>
<input type="hidden" name="x_ship_to_first_name" value=""/>
<input type="hidden" name="x_ship_to_last_name" value=""/>
<input type="hidden" name="x_ship_to_company" value=""/>
<input type="hidden" name="x_ship_to_address" value=""/>
<input type="hidden" name="x_ship_to_city" value=""/>
<input type="hidden" name="x_ship_to_state" value=""/>
<input type="hidden" name="x_ship_to_zip" value=""/>
<input type="hidden" name="x_ship_to_country" value=""/>
<input type="hidden" name="x_tax" value="0.0000"/>
<input type="hidden" name="x_duty" value="0.0000"/>
<input type="hidden" name="x_freight" value="0.0000"/>
<input type="hidden" name="x_tax_exempt" value="FALSE"/>
<input type="hidden" name="x_po_num" value=""/>
<input type="hidden" name="x_MD5_Hash" value="A375D35004547A91EE3B7AFA40B1E727"/>
<input type="hidden" name="x_cavv_response" value=""/>
<input type="hidden" name="x_test_request" value="false"/>
<input type="hidden" name="x_subscription_id" value="365314"/>
<input type="hidden" name="x_subscription_paynum" value="1"/>
<input type="submit"/>
答案 1 :(得分:0)
除了John Conde的答案之外,我还想补充一点,你应该尝试从与主站点不同的网址发布此信息。在某些情况下,您不希望接受来自外部网站的帖子,并且禁用此功能是一项安全功能。
因此,如果你要去测试只是去一个jsfiddle网站并从那里做你的发布。