0 0

chrome扩展开发中关于通讯的问题5

新手开发chrome扩展,模仿例子写了个扩展,但是在后台页面和内容脚本之间的通讯碰到了问题。在内容脚本上建立chrome.extension.connect,但是内容脚本却无法收到后台页面返回的信息。
相关代码,content.js
var url='http://*/getbook.php?isbn=9787564109059';
		var port = chrome.extension.connect({name:"port"}); 
		port.onMessage.addListener(onMessageRecieved); 
		port.postMessage({message: url});  
                function onMessageRecieved(data) { 
			);
			addResult(data.message);
		}

bg.html
<script type='text/javascript'>
	var req;
	var url;
	chrome.extension.onConnect.addListener(onPortConnect); 
	function onPortConnect(port) {
		if(port.name=="port")
			port.onMessage.addListener(onMessageRecieved);  
	} 

	function onMessageRecieved(data,port) { 
		var req = new XMLHttpRequest();
		var url=data.message;
		req.open("GET",url,true);
		req.onload = function(){parseResult(this,port)};
		req.send(null);
	} 
	
	function parseResult(xhr,port){
		var arr=JSON.parse(xhr.responseText);
		sendBack(port,arr);
	}

	function sendBack(port,arr){
		port.postMessage({message: arr}); 
	}

</script>

在调试时,发现content.js可以post message,但是却无法处理onMessageRecieved,不知道是两者间通讯不成功,还是bg.html返回给content.js的message出错了?请问这个要如何解决,或者如何调试发现问题
2012年2月28日 11:26
目前还没有答案

相关推荐

    chrome插件开发-页面对象注入及本地通信

    以上是关于Chrome插件开发中页面对象注入和本地通信的基本概念和实践方法。理解并熟练运用这些技术,可以帮助开发者创建出功能强大的Chrome扩展,以满足各种用户需求。在实际开发中,还需注意权限管理、异步编程和...

    Chrome浏览器接口通讯插件

    Chrome浏览器接口通讯插件,如DHC(DHC REST HTTP API Client),是开发人员和测试工程师的得力工具,用于模拟REST客户端与服务器之间的交互。这个插件允许用户方便地发送HTTP请求,包括GET、POST、PUT、DELETE等,...

    Vue3开发Chrome插件时popup-content-background之间的通信API组合和实现

    本程序为作者使用vue3开发chrome插件时实践各个通讯API后,总结的相互之间无干扰的高效数据传输API组合,程序使用vscode可直接打开,npm install安装node_modules文件夹后直接点击NPM工具中的watch或build开始对插件...

    使用Chrome浏览器调试Android App详解

    总的来说,Stetho极大地简化了Android App的调试工作,它将Chrome的强大功能扩展到了Android领域,让开发者可以更加高效地定位和解决问题。通过结合Chrome的Developer Tools,开发者可以像调试Web应用一样调试...

    Axure RP Extension for Chrome 0.7.0

    安装`.crx`文件是Chrome浏览器扩展的常见方式,用户只需将`Axure RP Extension for Chrome 0.7.0.crx`文件拖放到Chrome的扩展管理页面(chrome://extensions/)即可完成安装。不过,需要注意的是,由于安全原因,...

    电信设备-Chrome网页与终端软件通讯方法、设备及存储介质.zip

    首先,Chrome网页与终端软件的通讯方法主要基于Web应用程序接口(Web API)和浏览器扩展机制。Web API允许网页通过JavaScript与浏览器进行交互,包括获取用户输入、操作DOM、发送网络请求等。在Chrome中,...

    h5即时通讯源码,PHP开发的H5即时通讯聊天系统源码 带群聊 可封装APP

    8. **安全与隐私**:在即时通讯系统中,用户隐私和数据安全是核心问题。可能采用HTTPS协议保证通信的安全,消息加密确保内容不被泄露,以及防止XSS、CSRF等网络攻击的策略。 9. **性能优化**:为了保证大规模用户下...

    Google-Chrome-Native-Messaging:使用JSON在C ++应用程序和Google Chrome Native Messaging之间进行数据通信

    7. **调试和测试**:在开发过程中,调试Chrome扩展和本地应用之间的通信至关重要。这可能涉及到日志记录、错误处理和模拟不同情况下的数据交换。 综上所述,这个主题涵盖了一个完整的开发流程,包括理解Chrome ...

    matters-muter:消音器,chrome扩展,一个chrome扩展,用于在问题上屏蔽不友好的帐户

    chrome / firefox扩展程序,用于在问题上屏蔽不友好的帐户 该项目使用构建 安装 屏幕截图 用法 你可以看到 通讯配置 要求 节点&gt; = 10 纱线&gt; = 1.10 如何建造 运行yarn安装依赖项。 运行NODE_ENV=production yarn ...

    webBrowser扩展浏览器通过JS代码与串口通讯.rar

    总的来说,"webBrowser扩展浏览器通过JS代码与串口通讯.rar"这个压缩包可能包含了一系列教程、示例代码或库,帮助开发者了解和实践如何在扩展浏览器中利用JS实现与串口、UDP、TCP的通讯,以及对本地电脑进行操作。...

    点击致电Chrome扩展程序「Click To Call Chrome Extension」-crx插件

     #提高电话通讯速度。  #集成点击通过SugarCRM Asterisk Add-on调用Chrome扩展程序。 点击呼叫Chrome扩展与SugarCRM Asterisk插件集成的优点。  #点击呼叫从浏览器任何号码。  #呼叫在CRM中弹出。  #在...

    C#多进程浏览器-仿Chrome浏览器

    在IT领域,尤其是在软件开发中,C#是一种广泛使用的编程语言,尤其在Windows应用程序和.NET框架下。"C#多进程浏览器-仿Chrome浏览器"是一个项目,它旨在模仿Google Chrome浏览器的设计理念,利用C#来实现一个支持多...

    mailgo-chrome-extension::love_letter:mailgo Chrome扩展程序

    "官方mailgo Chrome扩展程序"表明这是由mailgo项目的官方团队开发并维护的插件,因此它将提供原生、稳定且可靠的服务,确保用户可以安全地使用它来处理他们的在线通讯需求。 **标签解析:** 1. **chrome-extension...

    SSH.zip_chrome_chrome ??

    标题中的"SSH.zip_chrome_chrome ??"暗示了这是一个与Chrome浏览器相关的压缩包,其中可能包含了一个或多个用于增强...对于希望了解或开发类似Chrome插件的用户来说,研究这个压缩包中的内容会是一个宝贵的学习资源。

    chrom插件开发 阿里巴巴账号密码自动填充登录

    Chrome插件,也称为Chrome扩展,是用于增强和定制Google Chrome浏览器功能的小型软件应用程序。在本案例中,我们关注的是一款特别设计的插件,它实现了阿里巴巴账号密码的自动填充登录功能。这款插件利用了Chrome...

    Click To Call Chrome Extension-crx插件

    此chrome扩展程序可用于单击以从TechExtension(www.techextension.com)开发的chrome浏览器中呼叫任何号码。 点击通话Chrome扩展程序可以从Chrome浏览器的任何网页中选择点击号码,以提供点击通话功能。 ...

    一些工具&API,自己用的。

    - **Chrome扩展开发**:所有.crx文件都是Chrome浏览器的扩展,需要熟悉Chrome的Manifest JSON文件结构、Chrome API的使用以及JavaScript编程。 - **跨浏览器兼容性**:涉及到IE和Chrome之间的兼容性问题,需要理解...

    ghost-messenger:鬼信使的Chrome扩展程序(不包括NLP)

    【标题解析】 "ghost-messenger" 是一个项目名称,暗示这是一个与消息...5. 对于想学习浏览器扩展开发或者JavaScript应用实践的开发者来说,这是一个很好的学习资源,可以从中了解如何构建和实现一个简单的Chrome扩展。

    conference-message:用于向 Twilio 会议号添加消息的 Chrome 扩展程序

    2. **Chrome扩展开发**:扩展程序是基于Chrome浏览器的插件,使用Web技术(如HTML、CSS和JavaScript)构建。开发者创建了一个manifest.json文件,定义了扩展的元数据、权限和内容脚本,使得JavaScript代码能在用户...

Global site tag (gtag.js) - Google Analytics