chrome.runtime.sendMessage
时间: 2023-11-02 07:05:02 浏览: 47
`chrome.runtime.sendMessage()` 方法是 Chrome 扩展中用于在不同的扩展页面之间发送消息的 API。这个方法的语法如下:
```javascript
chrome.runtime.sendMessage(extensionId, message, options, callback);
```
其中,参数的含义如下:
- `extensionId`:可选参数,指定要发送消息的扩展 ID。如果未指定此参数,则默认为当前扩展。
- `message`:必需参数,要发送的消息对象。
- `options`:可选参数,一个对象,包含以下属性:
- `frameId`:发送消息的帧的 ID。如果未指定,则默认为 0,表示消息将发送到扩展的主框架或扩展页面。
- `includeTlsChannelId`:一个布尔值,指示是否应包括用于 TLS 连接的通道 ID。默认为 false。
- `timeout`:发送消息的超时时间(毫秒)。如果指定了此参数,则如果在超时时间内未收到响应,则回调函数将以一个错误对象作为参数被调用。
- `callback`:可选参数,一个回调函数,用于接收接收到的响应。回调函数接收一个参数,表示接收到的响应消息。如果未收到响应,则该参数为 undefined。
`chrome.runtime.sendMessage()` 方法用于在不同的扩展页面之间发送消息,例如从浏览器操作栏中的弹出窗口发送消息到扩展的主框架。请注意,该方法只能用于扩展的不同页面之间发送消息,不能用于与 Web 页面或远程服务器之间发送消息。