通过以下代码向当前页面发送 “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相关推荐

  1. 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. ...

  2. Google Chrome插件开发-Context Menus

    本节主要介绍如何在Google Chrome浏览器web页面上点击右键弹出自定义菜单,即如何使用谷歌Context Menus API接口.上节已经把主要流程介绍了,这节就直接上代码,代码都是官方例子 ...

  3. Chrome 插件开发小记

    文章目录 前言 manifest.json 常用配置项 常用API 脚本注入 网站与插件通信 网站端 插件端 打包 .crx QA 其他参考链接 前言 群里闲逛,看见有人发了个图,感觉还挺有意思,抽空 ...

  4. Google Chrome 源码下载地址 (Google Chrome Source Code Download)

    1. Google Chrome 源码 SVN 地址:http://src.chromium.org/svn.包含有 Chrome.Gears.Webkit.GCC 等源码以及编译依赖工具.Chrom ...

  5. 计算机拒绝目标用户,由于目标计算机主动拒绝,无法建立连接127.0.0.1:8082

    我制作了一个小型Windows服务,我需要从我自己的本地主机系统连接,但在运行应用程序时出现错误.由于目标计算机主动拒绝,无法建立连接127.0.0.1:8082 No connection coul ...

  6. Google Chrome浏览器的Cookies文件找不到问题

    一.问题 有个每天执行的Python代码,会自动获取Google Chrome浏览器的Cookie来访问网站数据,具体相关实现思路<获取chrome80谷歌浏览器存储的指定网站Cookie数据方 ...

  7. Google Chrome 浏览器插件开发学习

    2014/11/16 Google Chrome 浏览器插件开发学习 因笔记存有文件,不便发表在cnblogs上,请到evernote里找笔记 "Google Chrome 浏览器插件开发学 ...

  8. 学习Google Chrome源码

    读<Google Chrome源码剖析>笔记,学习Chrome中优秀的设计思想. 原文地址:http://www.ha97.com/2911.html 零.[序] 1.关于开源 " ...

  9. Google Chrome 中的高性能网络

    Google Chrome 中的高性能网络 Google Chrome的历史和指导原则 原译注:这部分不再详细翻译,只列出核心意思. 驱动Chrome继续前进的核心原则包括: Speed:做最快的(f ...

最新文章

  1. Flash/Flex学习笔记(4):如何打开网页及Get/Post数据
  2. 周报 2016.04.10
  3. TQ210裸机编程(2)——LED流水灯
  4. android 彩蛋 miui,MIUI12最新更新,安卓11彩蛋终于出现,流畅度提升
  5. jvm指令重排原因?怎么避免?
  6. ZeroC ICE的远程调用框架 ASM与defaultServant,ServantLocator
  7. [Learn Notes] CSS学习笔记
  8. RHEL5下构建Snort网络***检测系统
  9. 理解三值逻辑与NULL,你离SQL高手更近了一步
  10. 利用MSFM算法计算程函方程的走时CT胖射线反演法
  11. 8月20日全球六大国际域名解析量变化情况统计报告
  12. php mysql调用crontab_PHP中如何实现crontab代码
  13. JSON如何序列图片
  14. Linux编程中 #define _XOPEN_SOURCE的作用
  15. CVPR历年best paper(2000-2018)
  16. 使用跨端解决方案Rax编写鸿蒙应用
  17. PDF编辑方法,怎么给PDF添加页码
  18. Nuxt开发中The client-side rendered virtual DOM tree is not matching server-rendered content.的问题
  19. 服务器SN信息,命令查看服务器SN号
  20. 67. 把字符串转换成整数

热门文章

  1. android强制分屏软件,oppo第三方强制分屏软件app,OPPO第三方强制分屏软件app安卓版预约 v1.0.0-手游汇...
  2. 【全新升级】SF06(源码):过滤震荡,抓稳趋势,均线构建过滤通道,让利润奔跑(MC,金字塔,TB,文华8 四版本源码)
  3. 51单片机安装不了驱动问题的解决方案
  4. 【拾童年回忆】Java开发 黄金矿工小游戏
  5. 用户积分营销的三种方式
  6. 【酷易物联-microPython教程系列】通过文件模板将ESP32连入服务器实现远程点灯(1):创建设备和命令配置
  7. Android 使用easeui 3.0 集成环信即时通讯 我踩过的坑
  8. WIFI名字为特殊字符显示乱码(MTK)
  9. 芯片低功耗相关的术语简介
  10. 一份很全的路由器默认初始密码