我有一个在 Heroku 上运行的应用程序,它使用套接字.io http://socket.io/与客户沟通。到目前为止,所有客户端都是 HTML/JS,所以效果很好。现在我想用 Visual Basic 编写一个客户端,但我找不到任何其他人编写的用于从 VB.NET 与 socket.io 通信的库。
有这样的图书馆我还没找到吗?如果没有,在 VB.NET 中实现 WebSocket 或长轮询有多难?仅包含一个 WebBrowser 控件(使用标准 socket.io 库)来与服务器通信并将数据传入和传出是否值得?
我已经有几年没有在 VB 中做过任何工作了,所以如果我在这里遗漏了一些明显的东西,我深表歉意。
我有类似的问题。我通过在 Node.js 中使用 net 并在 VB.Net 端使用 TcpClient 解决了我的问题。
Node.js 端
const net = require('net');
const server = net.createServer((socket) => {
console.log('Client connected');
socket.on('data', (data) => {
console.log(`Received data: ${data}`);
// Process the received data as needed
// Send response back to the client
socket.write('Response from Node.js');
});
socket.on('end', () => {
console.log('Client disconnected');
});
});
const port = 3000;
server.listen(port, () => {
console.log(`Server listening on port ${port}`);
});
视觉基本面
Try
While True
Dim client As TcpClient = New TcpClient()
client.Connect("localhost", 3000) ' Replace with the actual server IP and port
Dim data As Byte() = Encoding.ASCII.GetBytes("Data from VB.NET")
Dim stream As NetworkStream = client.GetStream()
stream.Write(data, 0, data.Length)
Dim response As Byte() = New Byte(1023) {}
Dim bytesRead As Integer
Dim responseData As String = ""
' Read data until no more available
Do
bytesRead = stream.Read(response, 0, response.Length)
responseData += Encoding.ASCII.GetString(response, 0, bytesRead)
Loop While stream.DataAvailable
stream.Close()
client.Close()
End While
Catch ex As Exception
End Try
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)