我目前正在尝试调试 Cordova 应用程序的 InAppBrowser(在 Android 上)内发生的 JavaScript 错误。不幸的是,虽然我可以使用 Chrome 的远程调试/检查工具连接到手机上的 Web View ,但控制台输出为空,尽管事实不应该如此。 (无论是否遇到问题,都应该显示其他消息/警告。)
此时,我在尝试获取控制台/错误消息时遇到了困难。似乎什么都不起作用。任何人都可以想出一种方法来告诉 webview/javascript 将所有错误消息转发到远程地址吗? (显然,我永远不会发布具有这种配置的应用程序。)
最佳答案
如果是 JavaScript 错误,您也许可以使用 window.onerror
捕获它。这个想法是捕获错误然后将其发布到日志服务器。
window.onerror = function (msg, url, lineNo, columnNo, error) {
alert(msg)
// Log error to external server.
// axios.post(url, JSON.stringify({msg, url, lineNo, columnNo, error}))
}
const test = undefined
test.error
我在生产环境中执行此操作。这有助于捕获错误并更快地通知我问题。
关于javascript - 是否可以将所有浏览器控制台消息/错误通过管道传输到远程计算机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59618327/