Javascript Chrome API-无法读取未定义的属性
我正在编写一个小javascript应用程序,试图使用ChromeSocketsAPI。不过,代码似乎没有太大的相关性,因为我在第一行就遇到了一个错误:Javascript Chrome API-无法读取未定义的属性,javascript,sockets,google-chrome,Javascript,Sockets,Google Chrome,我正在编写一个小javascript应用程序,试图使用ChromeSocketsAPI。不过,代码似乎没有太大的相关性,因为我在第一行就遇到了一个错误: var socket = chrome.sockets.udp; 在那一行,我得到一个未捕获的TypeError:无法读取未定义的属性'udp'。所以chrome.sockets并不是出于某种原因被定义的,但就我的一生而言,我似乎不知道是什么。我是否需要包含或导入一些东西来使用ChromeAPI?API文档在这方面没有帮助 编辑:backgr
var socket = chrome.sockets.udp;
在那一行,我得到一个未捕获的TypeError:无法读取未定义的属性'udp'。所以chrome.sockets并不是出于某种原因被定义的,但就我的一生而言,我似乎不知道是什么。我是否需要包含或导入一些东西来使用ChromeAPI?API文档在这方面没有帮助
编辑:background.js文件:
var socket = chrome.sockets.udp;
var PORT = 5005;
var HOST = '127.0.0.1';
var sockInfo;
chrome.app.runtime.onLaunched.addListener(function() {
chrome.app.window.create('window.html', {
'bounds': {
'width': 400,
'height': 500
}
});
init();
});
function init(){
socket.create({}, function(_sockInfo){
sockInfo = _sockInfo;
socket.bind(sockInfo.socketId, HOST, PORT, function(result){
if(result < 0){
throw "Bind failed"
}
console.log("Socket created and bound.");
socket.onReceive.addListener(function(info){
console.log('Received packet from ' + info.remoteAddress +
' : ' + info.remotePort + ', length ' + info.data.length);
});
});
});
}
var socket=chrome.sockets.udp;
var端口=5005;
var-HOST='127.0.0.1';
var-sockInfo;
chrome.app.runtime.onLaunched.addListener(函数(){
chrome.app.window.create('window.html'{
“界限”:{
“宽度”:400,
‘高度’:500
}
});
init();
});
函数init(){
创建({},函数(_sockInfo){
sockInfo=\u sockInfo;
socket.bind(sockInfo.socketId、主机、端口、函数(结果){
如果(结果<0){
抛出“绑定失败”
}
log(“创建并绑定套接字”);
socket.onReceive.addListener(函数(信息)){
console.log('从'+info.remoteAddress+接收到数据包'
“:”+info.remotePort+”,长度“+info.data.length);
});
});
});
}
这是在Chrome应用程序中实现的吗?以前没有,但我现在已经尝试过了(承认是以一种非常快速和肮脏的方式),错误仍然是一样的。我已将background.js文件添加到OP中以供参考。是否添加了套接字权限?请显示应用程序的清单文件。套接字权限起了作用。谢谢。这是在Chrome应用程序中吗?以前没有,但我现在已经尝试过了(承认是以一种非常快速和肮脏的方式),错误仍然是一样的。我已将background.js文件添加到OP中以供参考。是否添加了套接字权限?请显示应用程序的清单文件。套接字权限起了作用。谢谢。这是在Chrome应用程序中吗?以前没有,但我现在已经尝试过了(承认是以一种非常快速和肮脏的方式),错误仍然是一样的。我已将background.js文件添加到OP中以供参考。是否添加了套接字权限?请显示应用程序的清单文件。套接字权限起了作用。非常感谢。