【发布时间】:2018-09-04 05:05:00
【问题描述】:
我正在将 accept.js 集成到我的应用程序中。
https://developer.authorize.net/api/reference/features/acceptjs.html
这不是一个特别的集成问题。这是我试图解决的 JavaScript 问题。
按照教程,当点击表单提交时,有一个函数会被调用。该函数负责将信用卡信息打包并发送给authorize.net服务器。
<script type="text/javascript">
function sendPaymentDataToAnet() {
var authData = {};
authData.clientKey = "YOUR PUBLIC CLIENT KEY";
authData.apiLoginID = "YOUR API LOGIN ID";
var cardData = {};
cardData.cardNumber = document.getElementById("cardNumber").value;
cardData.month = document.getElementById("expMonth").value;
cardData.year = document.getElementById("expYear").value;
cardData.cardCode = document.getElementById("cardCode").value;
var secureData = {};
secureData.authData = authData;
secureData.cardData = cardData;
Accept.dispatchData(secureData, responseHandler);
}
</script>
问题是 Accept.dispatchData() 似乎是一个异步调用。如果我在单击提交之前断开网络连接,那么 Accept.dispatchData 将无法连接到外部服务。
会报如下错误
我的目标是发现这个错误。我尝试将 Accept.dispatchData 包装在 try catch 块中,但它似乎没有捕捉到抛出的错误。似乎错误在其中的某个地方被捕获。如何检测 ERR_INTERNET_DISCONNECTED 错误?谢谢!
【问题讨论】:
标签: javascript grails authorize.net accept.js