![](/img/trans.png)
[英]uncaught security exception for the webkitNotifications.createNotification used in chrome extensions
[英]Exception handling in Chrome extensions
我似乎无法在 Chrome 扩展文档中找到有关异常处理的任何内容。 所有的异步 api 都很难避免在代码中到处乱放 try/catch 语句。
如何将全局异常处理程序添加到我的后台页面,以便在发生异常时进行一些资源清理?
您可以使用chrome.runtime.lastError
在执行脚本回调中获取错误:
chrome.tabs.executeScript(tabId, details, function() {
if (chrome.runtime.lastError) {
var errorMsg = chrome.runtime.lastError.message
if (errorMsg == "Cannot access a chrome:// URL") {
// Error handling here
}
}
})
我一直无法找到全局错误处理程序,但我能够提出一个同样有效的解决方案。
不过,这确实取决于您调用的方法。 我的大部分错误来自在chrome://
页面或 chrome 网上商店页面上调用chrome.tabs.executeScript()
。 此函数的最后一个参数是包含results
数组的回调。 我发现如果这是undefined
我会收到一个错误。 通过这种方式,我能够设置一个简单的错误处理功能,以在出现错误时通知用户。
chrome.tabs.executeScript(null, {file: '/path/to/file.js'}, function(results) {
if (results === undefined) {
// Fire error handling code
}
});
再次,如果这适用于您正在调用的方法,但我能够以这种方式做我想做的事情。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.