我的Android设备+应用程序每隔几毫秒不断发送数据,我希望在我使用JavaScript / HTML构建的网络浏览器应用程序上接收数据。
在Android / Java应用程序中,我通过套接字执行以下操作:
//Initialize, where PORT = local ip of my laptop with web server I guess.
//and I choose an available port on my network, say 8080.
echoSocket = new Socket(HOST, PORT);
out = new PrintWriter(echoSocket.getOutputStream(), true);
//Sending data every few ms:
JSONObject j = new JSONObject();
j.put("x", params[0]);
j.put("y", params[1]);
j.put("z", params[2]);
String jString = j.toString();
out.println(jString);
所以我有{"x": 1.0023532, "y": 2.454234, "z": 6.234583}
之类的东西。
在其他Java应用程序中,我通过让我的接收器应用程序在上面使用的特定ServerSocket
上创建PORT
来完成此通信。然后,只要我的笔记本电脑拥有正确的本地IP地址,我就可以serverSocket = new ServerSocket(PORT);
等等。
现在,我如何在Web应用程序(JavaScript / HTML)中接受这些数据?我听说过websockets但不知道如何初始化和使用它 - 希望它非常简单。
感谢。
答案 0 :(得分:1)
我认为没有中间人(服务器)可以将数据直接发送到浏览器。如果你想创建一个快速简便的服务器来来回ping数据我会对NodeJ有一些乐趣。我没有机会使用这些东西,但我确实玩得很开心。如果您只是在客户端之间来回ping数据,那么可能需要特别注意。
我前段时间看过这段视频“Introduction to Node.js with Ryan Dahl”,他展示了一个基本的例子,几乎可以说明你所说的内容。只是一个想法,加上它将是一个有趣和快速的实施。
另一方面,如果您想将其带到实时服务器,我相信亚马逊AWS有一个Node JS实例。我非常确定您可以免费设置微型实例。