gpt4 book ai didi

javascript - 如何捕获javascript中异步调用的错误?

转载 作者:行者123 更新时间:2023-11-30 14:42:06 25 4
gpt4 key购买 nike

我正在将 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 将无法连接到外部服务。

会抛出如下错误

enter image description here

我的目标是捕捉这个错误。我尝试在 try catch block 中包装 Accept.dispatchData 但它似乎没有捕获抛出的错误。似乎错误在其中的某个地方被捕获。我如何检测 ERR_INTERNET_DISCONNECTED 错误?谢谢!

最佳答案

window.onerror可用于检测 window errors

navigator.onLine可用于检测互联网连接

// Window: On Error
window.onerror = (error) => console.log('navigator.onLine:', navigator.onLine)

// Trigger.
const trigger = error

关于javascript - 如何捕获javascript中异步调用的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49484920/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com