javascript - VB.NET TCP 客户端与 NODE-RED TCP 侦听器进行双向通信
问题描述
我有一个在 Windows 启动时启动的简单 VB.net 应用程序。该应用程序的目的是在 Node-Red 上托管的远程 tcp 侦听器上发送一个字符串 (My.settings.name) 我使用 Timer3 从 TCP 侦听器接收字符串我已经测试了客户端并且我能够接收/发送到另一个 vb.net。主要问题是如何从 NODE-RED TCP 发送字符串
Private Sub Timer3_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer3.Tick
If TCPClientStream.DataAvailable = True Then
Dim rcvbytes(TCPClientz.ReceiveBufferSize) As Byte
TCPClientStream.Read(rcvbytes, 0, CInt(TCPClientz.ReceiveBufferSize))
Dim msg As String = System.Text.Encoding.ASCII.GetString(rcvbytes)
MsgBox(msg)
End If
End Sub
这是用于在 vb.net 中接收 tcpclient 上的字符串的代码
[{"id":"aaed7ff9.1a39e","type":"debug","z":"a02a1902.30b3a8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":350,"y":140,"wires":[]},{"id":"b9218dcd.c12b58","type":"tcp in","z":"a02a1902.30b3a8","name":"","server":"server","host":"","port":"1312","datamode":"stream","datatype":"utf8","newline":"[update]","topic":"","base64":false,"x":130,"y":120,"wires":[["aaed7ff9.1a39e"]]}]
这是 tcp 侦听器节点和调试节点的代码。
搜索谷歌我看到的唯一选择是如果我使用节点红色作为客户端,并使用 tcp 请求。有什么办法可以反其道而行之吗?可以创建一个 tcp 服务器功能吗?
解决方案
好的,经过一番研究,我找到了解决问题的方法。首先我们有一个 tcp(输入)监听节点,在节点设置中,输出添加以下内容: msg._session 。 TCP 输入节点设置
其次添加一个模板节点,在模板节点中保存您要发送给客户端的信息。第三添加一个 tcp (out) 节点,并将类型更改为回复 tcp。 TCP 输出节点
推荐阅读
- php - 需要laravel中动态时间的空闲时间段
- java - logback:在滚动之前签署日志文件
- geolocation - 雪花查询以获取多边形内的数据
- mysql - 在mysql中仅插入时间戳中的日期
- jquery - 悬停时更改班级背景
- javascript - 设置显示编码页面请求
- tensorflow - 张量流中有logit函数吗?
- javascript - 在元素的开头生成innerHTML
- java - 错误 [org.apache.catalina.core.ContainerBase.[jboss.web].exception: java.lang.ClassNotFoundException: org.apache.commons.collections.ArrayStack
- node.js - 无法启动 ioinc 3 项目