google-chrome - 如何使用chrome.sockets.udp API进行UDP广播?

标签 google-chrome google-chrome-extension udp broadcast

我正在开发Chrome扩展程序,并且想在本地网络上广播UDP数据包。

我研究了这个Chrome API

 chrome.sockets.udp.create({}, function(s){   
        chrome.sockets.udp.bind(s.socketId, address, 0, function(ret){
            chrome.sockets.udp.send(s.socketId, data, "172.16.0.0", 5019, 
                function(sendinfo){console.log(data.byteLength); console.log(sendinfo);})})})

如果我指定了类似172.16.0.0的地址,那么上面的代码就可以了。但是,如果我将172.16.0.0更改为255.255.255.255,我得到了{resultCode: -10},它指示错误。

我的manifest.json:
{
  "manifest_version": 2,
  "name": "UDP",
  "description": "Test",
  "version": "2",
  "minimum_chrome_version": "23",
  "app": {
    "background": {
      "scripts": ["main.js"]
    }
  },
  "sockets":{
    "udp": {"send":["*:*"], "bind":["*:*"]}
  }, 
  "permissions":["system.network"]
}

顺便说一句,我尝试了chrome.socket,即使在广播中也能正常工作。但是从Chrome 33开始不推荐使用该API。

最佳答案

从Chrome 44开始,我们有了setBroadcast API。

https://developer.chrome.com/apps/sockets_udp#method-setBroadcast

关于google-chrome - 如何使用chrome.sockets.udp API进行UDP广播?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24117931/

相关文章:

node.js - 客户端未收到多播消息

python - 如何下载 XML 文件避免弹出窗口这种类型的文件可能会通过 ChromeDriver 和 Chrome 使用 Python 中的 Selenium 损害您的计算机

javascript - 同源政策,谷歌浏览器, Canvas 和文件 ://scheme

javascript - 调用后编辑 Chrome 通知?

javascript - 使用 Chrome 扩展,如何使用长期连接(端口)将消息从后台脚本传递到内容脚本?

c - UDP 套接字超时循环的内存错误

css - 媒体查询适用于 chrome 但不适用于我的移动设备

google-chrome - 打包应用程序 - 从应用程序商店外部安装

javascript - 如何将在扩展菜单中输入的数据发送到另一个文件

python - UDP 打洞在非对称 NAT 上失败