gpt4 book ai didi

javascript - 检测 chrome.extension.sendRequest 失败

转载 作者:行者123 更新时间:2023-11-28 09:55:37 25 4
gpt4 key购买 nike

嘿,Chrome 开发人员 friend 们,如何检测 chrome.extension.sendRequest 失败的情况?我试过了,没有骰子:

chrome.extension.sendRequest({ /* message stuff here */ }, function(req){
if(req == null || chrome.extension.lastError == null){
alert("No response. :(");
}
});

但是发生的情况是回调根本不会触发,这正是我所期望的。有没有办法检测 sendRequest 何时失败?

谢谢!

最佳答案

您可以用 try{}catch(err){} 包围它来捕获抛出的任何错误,但如果没有响应,则不会抛出错误,并且也没有空响应.

这本来是通过设计来完成的,以允许消息接收者做它的事情。例如,它可能涉及几个 Web 服务请求或可能需要一段时间的 ajax 请求。

如果您知道响应需要多长时间,您应该实现一个超时(如果 sendRequest 函数包含一个超时就好了)

所以,你可以这样做:

var noResponse = setTimeout(100, function() {
alert('No response received within 100ms!');
});

chrome.extension.sendRequest({ /* message stuff here */ }, function(req){
clearTimeout(noResponse);
alert('I have a response!');
});

关于javascript - 检测 chrome.extension.sendRequest 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10082478/

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