可能是网络套接字上的不同语言
is posible different language on web socket?
当我想在我的应用程序上尝试web套接字技术时,我遇到了问题。但是我想问一下网络插座的要求。
1) 很可能我使用的是带有javascript语言的服务器,例如socket.io
var io = require('socket.io').listen(3001);
io.sockets.on('connection', function (socket) {
socket.emit('news', {hello: 'can you hear me'});
});
使用Java语言的客户端示例是socket.io.Java我正在使用这种方法从服务器获取消息
public void onMessage(JSONObject json, IOAcknowledge ack) {
Log.d("We received a message: " , json.toString());
}
我的套接字服务器是
SocketIO socket = new SocketIO("http://127.0.0.1:3001/news");
2) 支持所有机器吗?还是浏览器?我是网络套接字编程的新手,请帮我
谢谢你的回答。。。
是的,你可以用任何你想要的语言构建服务器,但网络套接字不是一个简单的套接字,它们是"遵循"特定协议的套接字,所以请确保你阅读了该协议的规范并在服务器上实现它,这样任何浏览器都可以建立与它的连接。
你也可以用任何语言编写客户端,但如果你不使用javascript,那么我不明白为什么你会使用网络套接字而不仅仅使用一个简单的套接字。但如果你想,只需看看浏览器向网络套接字服务器发送的数据,并从你自己的客户端模拟它。
为了详细说明Delta的答案,"websockets"是HTTP协议的变体,客户端发送HTTP请求消息,服务器发送HTTP响应,然后客户端和服务器使用仍然打开的TCP/IP连接来做"其他事情"。请求和响应包含特殊的标头,允许客户端和服务器同意以这种方式使用连接。
为了实现这一点,客户端和服务器都需要至少了解HTTP协议的一个子集,以便进行初始的"握手"。因此,您不能简单地使用websocket客户端与普通套接字服务器进行通信。。。反之亦然。(如果你尝试这样做,两端都会看到意外的东西/协议错误。并且websocket端应该立即关闭TCP/IP连接的端。)
话虽如此,websocket客户端和websocket服务器几乎可以用任何现代编程语言来实现。(普通套接字客户端和服务器也是如此。)
套接字是一种操作系统。您可以将它们与任何提供相关接口或将代码粘贴到实现它们的操作系统调用的语言一起使用(例如,在Linux上:socket(2)、connect(2
但如果你是套接字的新手,我强烈建议你读一本好的网络编程书。
- 如何使用HTML5与UDP套接字通信
- 在node.js中写入ECONNRESET错误和套接字连接检查
- java,javascript签名的小程序(文件选择,ftp上传)安全性/套接字异常
- 套接字服务器向客户端广播,但不从两者接收
- 如何确定套接字中的变量是否匹配
- 如何通过网络套接字连接到树莓派上的Mosquitto经纪人
- 快速的套接字 io 实例/中间件
- PHP:Web套接字和html 5
- 无法从客户端发出套接字消息
- STOMP web套接字回调不'不起作用
- Will my'新对象'在套接字断开连接时被垃圾收集
- 套接字服务器在本地获得500毫秒的往返时间
- 将服务器托管的Web应用程序连接到本地Web套接字
- 通过套接字发送画布元素,JS中的最大堆栈大小
- 如何使用套接字将node.js与ada连接起来
- 套接字io客户端网络::ERR_CONNECTION_REFUSED
- 节点.js设置套接字 ID
- node.js 需要太多的 TCP 套接字
- 可能是网络套接字上的不同语言
- 支持套接字的客户端浏览器语言/插件