我正在尝试在我的应用程序的后台脚本中创建一个 tcp
套接字。
错误是(1.js
中的第一行):
Uncaught TypeError: Cannot read property 'tcp' of undefined
后台脚本1.js
:
chrome.sockets.tcp.create({}, function(createInfo) {
chrome.sockets.tcp.connect(createInfo.socketId,
"127.0.0.1", 4005, function(socketInfo) {
});
});
list 文件:
{
"manifest_version": 2,
"name": "UDP TEST",
"version": "1.0",
"app": {
"background": {
"scripts": ["1.js"]
}
},
"permissions": [
{
"socket": [
"tcp-listen:*:*",
"tcp-connect",
"resolve-host"
]
}
]
}
谁能帮帮我?谢谢!
最佳答案
您在 list 中的权限有误。查找 Chrome API 帮助: https://developer.chrome.com/apps/sockets_tcp (特别是 list :https://developer.chrome.com/apps/manifest/sockets)
权限应为“sockets”。您正在使用新的“套接字”API,但在 list 中您指的是旧的“套接字”权限(https://developer.chrome.com/apps/socket)
您的 list 权限应为:
"permissions": [{
"sockets": {
"tcp": {
"connect": "127.0.0.1:4005"
}
}
}]
关于javascript - 为什么 chrome.sockets.tcp.create() 在应用程序后台脚本中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28393105/