我正在使用 Jetpack 开发 Firefox 插件,我需要在插件和用 Java 编写的服务器之间实现通信。必须在插件启动时打开通信,然后每次插件需要它时,它都会向服务器发出请求。但它必须是同步的,因为它需要服务器响应才能继续执行。
我一直在寻找 javascript 中同步套接字的示例,但没有得到结果。也许它可以通过异步代码来完成,但我不知道该怎么做。
编辑:这是我的附加组件的代码(使用jetpack-net库):
var net = require('net');
var Server = function() {
this.socket = net.createConnection(6666, 'localhost');
this.socket.on('data', function(data) {
console.log(data.replace(/\n/gm," "));
}).on('connect', function() {
//console.log('Socket connected.');
}).on('end', function() {
//console.log('Connection finished.');
});
this.findCategory = function(query) {
this.socket.write(query + "\n");
}
}
exports.main = function() {
var gs = new Server();
processResult(gs.findCategory('Bye'));
};