Chrome扩展-将变量从内容脚本发送到事件页面

Chrome Extension - Sending variable from content script to event page

本文关键字:事件 脚本 扩展 变量 Chrome      更新时间:2023-09-26

我想要一个事件页面从向其发送消息的内容脚本中获取一个变量。据我所知,我只能向事件页面发送一条简单的JSON消息,例如{greeting: "hello"}

如何将内容脚本中的变量发送到事件页面?

我已经研究过JSON.stringify()通过JSON消息发送变量,但我没有任何运气。

假设您有一个名为VAR的变量,您可以直接通过chrome.runtime.sendMessage发送它,而无需执行任何操作,因为消息是自动JSON序列化的。

chrome.runtime.sendMessage({ data: VAR });

您可以在从内容脚本发送消息时向对象传递字符串,然后在收到消息时在事件页面中对其进行解析。

内容脚本

var myObj = {};
chrome.runtime.sendMessage({data: myObj}, function(response) {
});

事件页面

chrome.runtime.onMessage.addListener(
  function(request, sender, sendResponse) {
      var data = request.data;
});