Javascript 谷歌Omnibox搜索在安装Chrome扩展时崩溃(只对少数用户间歇性发生)

Javascript 谷歌Omnibox搜索在安装Chrome扩展时崩溃(只对少数用户间歇性发生),javascript,google-chrome,google-chrome-extension,options,webrequest,Javascript,Google Chrome,Google Chrome Extension,Options,Webrequest,我有一个Chrome扩展,它允许你操作HTTP请求。3-4名用户面临这样一个问题:在Omnibox中搜索会导致Google搜索结果页面崩溃,而其他页面工作正常 请看一看,以了解更多信息 这个问题似乎可以通过两种方式解决: 导出规则、删除规则、重新启动浏览器、导入规则 只需重新启动浏览器 清除缓存 这个问题可以在Ubuntu 14、Windows 8.1和Chrome 42上重现。我有Ubuntu12.10Chrome42,我从来没有见过这个问题 这是你的电话号码。我只是想知道问题的原因。我在代码

我有一个Chrome扩展,它允许你操作HTTP请求。3-4名用户面临这样一个问题:在Omnibox中搜索会导致Google搜索结果页面崩溃,而其他页面工作正常

请看一看,以了解更多信息

这个问题似乎可以通过两种方式解决:

  • 导出规则、删除规则、重新启动浏览器、导入规则
  • 只需重新启动浏览器
  • 清除缓存
  • 这个问题可以在Ubuntu 14、Windows 8.1和Chrome 42上重现。我有Ubuntu12.10Chrome42,我从来没有见过这个问题

    这是你的电话号码。我只是想知道问题的原因。我在代码中使用了以下内容

  • chrome.storage.sync
  • chrome.webRequest.onBeforeRequest(阻止选项)
  • chrome.webRequest.onBeforeSendHeaders(阻止选项)
  • 我观察到另一个Chrome扩展,Scritsafe也面临同样的问题。本文中提到了详细信息,但用户仍然无法完全消除此错误

    在启动Chrome时启用日志记录是一种非常有用的用户体验,但我不确定这些日志是否有用。以下是日志:

    [13753:13788:0515/203052:WARNING:spdy_session.cc(2373)] Received HEADERS for invalid stream 7
    [13753:13788:0515/203052:WARNING:spdy_session.cc(2373)] Received HEADERS for invalid stream 11
    [133,3746404608:17:30:52.858104] Native Client module will be loaded at base address 0x0000702d00000000
    [13753:13788:0515/203058:WARNING:spdy_session.cc(2373)] Received HEADERS for invalid stream 17
    [13753:13788:0515/203210:WARNING:spdy_session.cc(2373)] Received HEADERS for invalid stream 55
    [13791:13791:0515/173212:WARNING:ipc_message_attachment_set.cc(37)] MessageAttachmentSet destroyed with unconsumed descriptors: 0/1
    
    主要问题是我无法在我的机器上实现这一点。如果我能够证明这一点,我肯定会尝试一些随机的事情并找出答案

    我已经做了足够多的谷歌研究。现在,我应该如何解决这个问题

    编辑: 此问题的克隆也可在中找到。Simon Knott也面临同样的问题/bug


    他提到要避免阻塞所有请求(尤其是避免XHR)

    你能保留
    chrome://net-internals
    在选项卡崩溃时打开并导出其事件?请确保偶尔清除日志,以避免日志中包含1小时的无用信息。@RobW这些事件是什么,它们如何有用?如果崩溃是由使用webRequest引起的,那么您将看到扩展修改了哪些标题(在选项卡崩溃之前)。如果您感到惊奇,默认情况下会删除cookie等私人详细信息。您的扩展不会无条件地修改请求/响应头:。我已经参与了Chrome的webRequest实现的各个部分,因此如果您提供更多的上下文,我可能会进一步帮助您。这样做可能会降低触发错误的几率。但是,如果您提供调试信息,以便找到错误的真正原因,并解决问题,使每个Chrome扩展开发人员(和用户)都能从中受益,那就太好了。至于为什么它只发生在一些用户身上:我不知道,这就是为什么我需要这些日志文件;)