Node.js服务器在浏览器上完成与移动设备相同的function

这是我在stackoverflow上的第一篇文章,所以请原谅我,如果我正在使已经存在的职位。 我有点新的HTML和.js,“知道基础的人”。

我在有kisok模式浏览器的平板电脑上有一个移动应用程序,我正在使用它在RPI(作品)上连接到我的NodeJS服务器。 我的项目中已经有很多HTML和.js文件。

我试图找出:

  1. 是否有可能做出新的独立的HTML或.js文件,将做我的平板电脑到服务器远程控制。 例子 – 当我点击一个button时,在RPI上的浏览器上点击相同的button,因为我在RPI上有另一个单独的显示,显示相同的东西,我只能用我的平板电脑作为HTML的getter(所以我可以在平板电脑上显示它)和RPI的input方法。 (同时在两个显示器上使用平板电脑作为input)

  2. 或者在服务器端更新所有现有的HTML和.js(更困难的方法,如果这件事情甚至是可能的)

非常感谢您的进一步帮助!

额外编辑 – 代码

这里是服务器端的代码!

//var app = require('http').createServer(handler); //var express = require("express")(); var express = require("express"); //var app = require("express")(); var app = express(); var http = require("http").Server(app); var path = require("path"); //var io = require('socket.io')(app); var io = require('socket.io')(http); var SerialPort = require('serialport'); //previous was app.listen(3000); http.listen(3000); //Enabling CORS - for specific localhost port app.use(function (req, res, next){ res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8080'); res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE'); res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type'); res.setHeader('Access-Control-Allow-Credentials', true); next(); }); function handler(req, res){ console.log(req, res); } var serialPort = new SerialPort.SerialPort("/dev/ttyAMA0", { baudrate: 9600, dataBits: 8, parity: "none", stopBits: 1, flowControl: false }); var counter = 0; serialPort.on("open", function () { console.log("open"); var service = new Service(); serialPort.on("data", function (data) { var hexData = data.toString('hex'); console.log(data, hexData); io.emit('hit', data); }); }); io.on('connection', function(socket){ console.log('Connected'); //nsmrcek - custom code for accepting data from client side socket.on("message1",function(data){ }); socket.on("message2",function(data){ }); socket.on("message3",function(data){ }); socket.on("message4", function(data){ }); socket.on("message5", function(data){ }); }); app.use(express.static(path.join(__dirname, '/'))); //app.use('/js', express.static(path.join(__dirname, app.get("/home",function(req,res,next){ //res.send("OK"); //if fails path incorrect res.sendFile(path.join(__dirname + "/index.html")); //res.render("index.html"); }); function Service() { this.mapCodeToHit = function (data) { "data send from little homemade CPU board via serial port to RPI server" } 

我希望这是足够的代码,所以你可以指示我在哪里把更多的代码来模拟点击evry其他客户端,同时点击其中一个客户端(alawys 2客户端)

如果您创build了一个通过服务器运行的websocket连接,并将button的更新状态推送到连接的客户端,这当然是可能的。 我不能在没有看到你的代码的情况下给出详细的答案,但是你可以从这里的socket.io文档开始,在你开始的时候提出更多的问题。

http://socket.io/

Interesting Posts