Google Chrome 插件开发: 无法建立连接, 接收端不存在. Could not establish connection. Receiving end does not exist
通过以下代码向当前页面发送 “start” 消息:
chrome.tabs.query({active: true,currentWindow: true}, tabs => {let tab = tabs[0];chrome.tabs.sendMessage(tab.id, "start");
});
报错:
Uncaught (in promise) Error: Could not establish connection. Receiving end does not exist.
可能的原因:
接收端, 也就是说目标页面必须有 chrome.runtime.onMessage 监听消息, 如果 “content-script” 没有注入到页面中, 那么这个页面就无法接收消息
如果你的插件刚刚加载, 并且在一个已经加载完毕的页面中使用它, 则会出这个问题.
因为这个页面已经加载完了, 它并没有被注入脚本, 你需要刷新页面, 使脚本注入到页面中, 然后才可以发送消息
平台不允许文章内容太少, 下面是水
sendMessage
chrome.tabs.sendMessage(integer tabId, any message, function responseCallback)
向指定标签页中的内容脚本发送一个消息,当发回响应时执行一个可选的回调函数。当前扩展程序在指定标签页中的每一个内容脚本都会收到 runtime.onMessage 事件。
参数 | 类型 |
---|---|
tabId | integer |
message | any |
responseCallback | optional function |
如果您指定了 responseCallback 参数,它应该指定一个如下形式的函数:
function(any response) {…};
response ( any )
请求处理程序发出的 JSON 响应对象。如果连接到指定标签页的过程中发生错误,将不传递参数调用回调函数,并将 runtime.lastError 设置为错误消息。
Google Chrome 插件开发: 无法建立连接, 接收端不存在. Could not establish connection. Receiving end does not exist相关推荐
- Chrome报错:Unchecked runtime.lastError: Could not establish connection. Receiving end does not exist.
Chrome报错:Unchecked runtime.lastError: Could not establish connection. Receiving end does not exist. ...
- Google Chrome插件开发-Context Menus
本节主要介绍如何在Google Chrome浏览器web页面上点击右键弹出自定义菜单,即如何使用谷歌Context Menus API接口.上节已经把主要流程介绍了,这节就直接上代码,代码都是官方例子 ...
- Chrome 插件开发小记
文章目录 前言 manifest.json 常用配置项 常用API 脚本注入 网站与插件通信 网站端 插件端 打包 .crx QA 其他参考链接 前言 群里闲逛,看见有人发了个图,感觉还挺有意思,抽空 ...
- Google Chrome 源码下载地址 (Google Chrome Source Code Download)
1. Google Chrome 源码 SVN 地址:http://src.chromium.org/svn.包含有 Chrome.Gears.Webkit.GCC 等源码以及编译依赖工具.Chrom ...
- 计算机拒绝目标用户,由于目标计算机主动拒绝,无法建立连接127.0.0.1:8082
我制作了一个小型Windows服务,我需要从我自己的本地主机系统连接,但在运行应用程序时出现错误.由于目标计算机主动拒绝,无法建立连接127.0.0.1:8082 No connection coul ...
- Google Chrome浏览器的Cookies文件找不到问题
一.问题 有个每天执行的Python代码,会自动获取Google Chrome浏览器的Cookie来访问网站数据,具体相关实现思路<获取chrome80谷歌浏览器存储的指定网站Cookie数据方 ...
- Google Chrome 浏览器插件开发学习
2014/11/16 Google Chrome 浏览器插件开发学习 因笔记存有文件,不便发表在cnblogs上,请到evernote里找笔记 "Google Chrome 浏览器插件开发学 ...
- 学习Google Chrome源码
读<Google Chrome源码剖析>笔记,学习Chrome中优秀的设计思想. 原文地址:http://www.ha97.com/2911.html 零.[序] 1.关于开源 " ...
- Google Chrome 中的高性能网络
Google Chrome 中的高性能网络 Google Chrome的历史和指导原则 原译注:这部分不再详细翻译,只列出核心意思. 驱动Chrome继续前进的核心原则包括: Speed:做最快的(f ...
最新文章
- Flash/Flex学习笔记(4):如何打开网页及Get/Post数据
- 周报 2016.04.10
- TQ210裸机编程(2)——LED流水灯
- android 彩蛋 miui,MIUI12最新更新,安卓11彩蛋终于出现,流畅度提升
- jvm指令重排原因?怎么避免?
- ZeroC ICE的远程调用框架 ASM与defaultServant,ServantLocator
- [Learn Notes] CSS学习笔记
- RHEL5下构建Snort网络***检测系统
- 理解三值逻辑与NULL,你离SQL高手更近了一步
- 利用MSFM算法计算程函方程的走时CT胖射线反演法
- 8月20日全球六大国际域名解析量变化情况统计报告
- php mysql调用crontab_PHP中如何实现crontab代码
- JSON如何序列图片
- Linux编程中 #define _XOPEN_SOURCE的作用
- CVPR历年best paper(2000-2018)
- 使用跨端解决方案Rax编写鸿蒙应用
- PDF编辑方法,怎么给PDF添加页码
- Nuxt开发中The client-side rendered virtual DOM tree is not matching server-rendered content.的问题
- 服务器SN信息,命令查看服务器SN号
- 67. 把字符串转换成整数
热门文章
- android强制分屏软件,oppo第三方强制分屏软件app,OPPO第三方强制分屏软件app安卓版预约 v1.0.0-手游汇...
- 【全新升级】SF06(源码):过滤震荡,抓稳趋势,均线构建过滤通道,让利润奔跑(MC,金字塔,TB,文华8 四版本源码)
- 51单片机安装不了驱动问题的解决方案
- 【拾童年回忆】Java开发 黄金矿工小游戏
- 用户积分营销的三种方式
- 【酷易物联-microPython教程系列】通过文件模板将ESP32连入服务器实现远程点灯(1):创建设备和命令配置
- Android 使用easeui 3.0 集成环信即时通讯 我踩过的坑
- WIFI名字为特殊字符显示乱码(MTK)
- 芯片低功耗相关的术语简介
- 一份很全的路由器默认初始密码