对于一个艺术项目,我想有多个分布式设备,可以输出声音。 火狐OS设备似乎是最佳的。 他们带来了必要的硬件,我知道HTML和JS非常好。 但我也需要控制Web服务器。
从我的理解,一个Firefox OS设备可以作为一个WiFi接入点(“分享互联网”)。 但是,它不能作为对加入该网络的其他设备小型web服务器 - 没有任何互联网连接。 对于本地应用这些API似乎只是没有足够强大。
但是,也许我错了(我想是)。 所以,是一个Firefox OS设备能够作为一个小型的web服务器上运行?
对于一个艺术项目,我想有多个分布式设备,可以输出声音。 火狐OS设备似乎是最佳的。 他们带来了必要的硬件,我知道HTML和JS非常好。 但我也需要控制Web服务器。
从我的理解,一个Firefox OS设备可以作为一个WiFi接入点(“分享互联网”)。 但是,它不能作为对加入该网络的其他设备小型web服务器 - 没有任何互联网连接。 对于本地应用这些API似乎只是没有足够强大。
但是,也许我错了(我想是)。 所以,是一个Firefox OS设备能够作为一个小型的web服务器上运行?
httpd.js并没有为我工作外的开箱。 但它给我带来了正确的轨道上。 后来我发现这和代码的调整和更新的一点点后,我得到了一个超级简单的服务器解决方案。
function startListen(){
console.log("Initializing server");
var socketServer = navigator.mozTCPSocket.listen(8080);
socketServer.onconnect = function(conn){
console.log("connected", conn, conn.ondata);
conn.ondata = function(ev){
console.log("Got request: ", ev);
conn.send("Ok. Got client on port " + conn.port);
conn.close();
};
conn.onclose = function(ev){
console.log("Client left:", ev);
}
};
socketServer.onerror = function(ev){
console.log("Failed to start: ", ev);
};
}
startListen();
在tcp-socket
需要许可。
有了这个代码,我能够在火狐OS模拟器启动这个,直接把我的浏览器打开的http://本地主机:8080 ,并获得在控制台的答案和日志。
PS。 这也适用于一个真实的设备上。 不幸的是,需要一个单独的接入点。 而Firefox OS可以作为一个热点本身的工作,这既不能在该模式下客户端或服务器(传出连接不正确路由和入站连接被拒绝)。
你应该尝试httpd.js 。 这个库是FirefoxOS 2.0。
// create a server object
server = new HttpServer();
// configure /sdcard/public as document root
server.get("/", "/sdcard/public");
// launch on port 3000
server.start(3000);
我不认为你需要为这个任务的服务器,你可以做的WebRTC主从通信和处理声音的客户端的执行。
我最近写了一篇关于Mozilla的黑客博客展示如何实现这个的文章:
嵌入在Firefox OS的HTTP Web服务器