【发布时间】:2010-11-15 14:40:10
【问题描述】:
我正在 Google Chrome 中构建一个针对网站发出查询的扩展程序。
查询由“背景页面”根据“内容脚本”的请求发出;当后台页面接收到发出查询的请求时,它会将查询发送出去,解析响应并将响应发送回内容脚本,使用 sendResponse()。
使用 XMLHttpRequest() 时一切正常;但我的问题是,如果我想使用 jQuery .get() 或 .load() 发出查询,那么当查询失败时,它们会静默失败,并且永远不会将响应发送到内容脚本。
如果我使用 .ajaxError() 注册事件处理程序,则会捕获错误,但显然无法从该事件处理程序调用 sendResponse(),因为我收到以下 Chrome 错误:
“尝试使用断开连接的端口对象”
搜索此错误只会检索找到此文本的 Chrome 的源代码,因此它不是很有帮助。
简而言之,我的问题是:是否可以在 Chrome 扩展的后台脚本中使用 jQuery.get(),并且在请求失败时仍然能够向内容脚本发送响应? (如果是,如何)
【问题讨论】:
-
你能贴一些代码吗?
标签: jquery google-chrome-extension