authorize.net - 沙箱中的 accept.js - E_WC_21:用户身份验证失败
问题描述
试图找出accept.js 来替换authorize.net 付款的折旧方法。没有做任何复杂的事情,但在使用沙箱时无法通过身份验证失败消息
登录沙盒帐户以生成密钥……它们的名称与代码示例略有不同。所以我可能是个白痴。
好的,apiLoginID - 很明显……下面的代码调用 data-clientKey。不能 100% 确定以下两者中的哪一个实际上是。我都试过了。两者都有同样的错误。
API登录ID:4CLLpD------
交易密钥:9628s6xCSh------
键:-----A4D932A4AFED546DE55E4D04C16CA66549915AFDC4FBA3A1665E271A2FB48A7A34394843A47BC170FFB4A5B99EDD17B75D99942E4E7F7133C2E1-----
<script type="text/javascript"
src="https://jstest.authorize.net/v3/AcceptUI.js"
charset="utf-8">
</script>
<form id="paymentForm"
method="POST"
action="mysite.com/beta-account/order-receipt.php" >
<input type="hidden" name="dataValue" id="dataValue" />
<input type="hidden" name="dataDescriptor" id="dataDescriptor" />
<button type="button"
class="AcceptUI btn-success btn-lg"
data-billingAddressOptions='{"show":true, "required":false}'
data-apiLoginID="4CLLpDX----"
data-clientKey="9628s6xCShc-----"
data-acceptUIFormBtnTxt="Submit"
data-acceptUIFormHeaderTxt="Card Information"
data-responseHandler="responseHandler">Pay
</button>
</form>
<script type="text/javascript">
function responseHandler(response) {
if (response.messages.resultCode === "Error") {
var i = 0;
while (i < response.messages.message.length) {
console.log(
response.messages.message[i].code + ": " +
response.messages.message[i].text
);
i = i + 1;
}
} else {
paymentFormUpdate(response.opaqueData);
}
}
function paymentFormUpdate(opaqueData) {
document.getElementById("dataDescriptor").value = opaqueData.dataDescriptor;
document.getElementById("dataValue").value = opaqueData.dataValue;
document.getElementById("paymentForm").submit();
}
</script>
现在,order-receipt.php 页面上没有任何内容。我只是想让帖子走得那么远,并向我展示发布到页面的所有内容的转储,所以即使我得到了这个工作,我还有很长的路要走。
当我进入支付页面时,点击“支付”按钮,填写信用卡表格,点击“提交”......它根本没有去任何地方。它停留在页面上并且控制台报告:“E_WC_21:由于身份验证值无效,用户身份验证失败。”
这变成了一件更令人沮丧的事情,因为我在 authorize.net 的文档中发现了我需要对 MD5 报废做些什么的文档……其中我永远无法找到任何工作来更换 SIM 继电器-正在使用的响应方法。response.js 作为替代品似乎相当简单,我也被困在这里。
我接下来要尝试什么?
解决方案
好的,我想我找到了问题……API 登录 ID、事务密钥和客户端密钥之间存在差异。这在某些文档中并不是很明显……
推荐阅读
- html - CSS 使用 div 作为掩码
- sql - 如何使用我的方案计算表中的总记录数
- basic - 我需要显示年份及其在该特定年份损失的价值
- sql - 选择语句中无法识别的列
- tensorflow - tf.fold vs tf.scan vs tf.map_fn
- javascript - TypeError: db.findWConditionandler 不是一个函数 MongoDB
- asynchronous - 即使范围拥有变量的所有权,引用仍被保留而无法使用
- html - {% if {{ row['rating']}} == 5 %} jinja2.exceptions.TemplateSyntaxError: expected token ':', got '}'
- php - laravel 中未显示的下拉列表
- vb.net - 当datagridview在特定单元格中有一些特定条件时,如何将datagridview行插入sql?