在Go中模拟tcp连接

2023-11-25

在 Go 中,TCP 连接 (net.Conn) 是 io.ReadWriteCloser。我想通过模拟 TCP 连接来测试我的网络代码。我有两个要求:

  1. 要读取的数据存储在字符串中
  2. 每当写入数据时,我希望将其存储在某种稍后可以访问的缓冲区中

是否有一种数据结构,或者一种简单的方法来实现这一点?


不知道在提出问题时是否存在这种情况,但您可能想要net.Pipe()它为您提供了两个全双工net.Conn相互链接的实例

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Go中模拟tcp连接 的相关文章

  • nsq 无法通过连接到 nsqlookupd 来消费消息

    我尝试使用 docker compose 来运行 nsq docker compose yml如下 version 3 services nsqlookupd image nsqio nsq command nsqlookupd ports
  • 我可以根据我正在构建的操作系统导入 Golang 包吗?

    假设我有一个基于哪个操作系统的 go 项目 在某些情况下是哪个发行版 我想使用 Systemd 客户端包 Upstart 客户端包 sysv 客户端包 launchd 客户端包 是否可以有选择地导入每个包 以便我只导入我正在构建的每个操作系
  • 在 Go 中使用电子邮件地址创建证书签名请求 (CSR)

    我尝试使用 crypto x509 包生成 CSR 但没有找到将 emailAddress 字段添加到其主题中的方法 根据文档证书申请 http golang org pkg crypto x509 CertificateRequest结构
  • 从 Docker 容器发送多播数据包(到多播组)

    我有一个通过 UDP 多播发送消息的应用程序 我一直试图将其放在 docker 下 我在尝试从 Docker 容器发送多播数据包时遇到了很大的阻力 我已经能够通过 net host运行 docker 容器的选项 然而 我想坚持使用桥接配置
  • 如何从非英语字符串解析go中的月份

    我想将以下字符串解析为 go 中的日期 This item will be released on March 9 2014 我跟着this https stackoverflow com questions 14106541 go par
  • 使用覆盖率信息测试 Go 中的 os.Exit 场景 (coveralls.io/Goveralls)

    这个问题 如何在 Go 中测试 os exit 场景 https stackoverflow com questions 26225513 how to test os exit scenarios in go 以及其中得票最高的答案 列出
  • 多个客户端如何同时连接到服务器上的一个端口(例如 80)? [复制]

    这个问题在这里已经有答案了 我了解端口工作原理的基础知识 但是 我不明白的是多个客户端如何同时连接到端口 80 我知道每个客户端都有一个唯一的 对于他们的机器 端口 服务器是否从可用端口回复客户端 并简单地声明回复来自 80 这是如何运作的
  • (转)如何使用toml文件?

    正如标题 我想知道如何使用 golang 中的 toml 文件 在此之前 我展示了我的 toml 示例 这样对吗 datatitle enable true userids 12345 67890 datatitle 12345 prop1
  • 如何在 Ubuntu 中将 Go 程序作为守护进程启动?

    在 Ubuntu 中将 Go 程序作为守护进程启动的正确方法是什么 然后我将使用 Monit 对其进行监控 我应该做这样的事情 go run myapp go 我应该考虑 Go 特有的事情吗 您应该为您的程序构建一个可执行文件 go bui
  • 根据值匹配数组

    我使用以下代码来解析 yaml 并应得到输出为runners对象和函数build应更改数据结构并根据以下结构提供输出 type Exec struct NameVal string Executer string 这是我尝试过的 但我不知道
  • 递归追加到切片不起作用

    我正在尝试学习 Go 但我不明白为什么递归调用堆栈末尾的这段代码返回一个空切片 有帮助吗 还tmp甚至似乎没有在调试器中注册 func main input 3 int 4 6 7 expected 6 7 4 6 7 4 6 4 7 fm
  • 在 Go/ 中创建/更新 google 驱动器权限/ [使用 api 创建电子表格但无法访问它]

    我正在尝试使用 google Drive api 和以下代码创建电子表格 但我无法访问它 update 该文件似乎不在我在这里指定的驱动器中 有人知道为什么会发生这种情况吗 update 在字段中添加了父母 但有 404 错误 说找不到文件
  • 如何在Go中将字节数组转换为字符串[重复]

    这个问题在这里已经有答案了 byte字符串会引发错误 string byte n 也会引发错误 顺便说一下 例如 文件名的 sha1 值是字符串 它是否明确需要 utf 8 或任何其他编码集 谢谢 我用来转换的最简单方法byte to st
  • 使用 Gorilla 会话自定义后端有什么优势?

    我想使用 Redis 进行会话管理 但我不明白使用 Redis 作为 Gorilla 会话包的自定义后端比直接使用它有什么优势 Gorilla 会话包的链接 http www gorillatoolkit org pkg sessions
  • Docker 容器与主机网络的网络性能非常慢

    我遇到了 Docker 容器和主机网络之间网络性能缓慢的问题 我在 Docker 论坛上提出了这个问题 但到目前为止还没有收到答案 Problem 设置 同一本地网络上的两台 Mac 第一个运行 MQTT 代理 mosquitto 第二个运
  • Android bindProcessToNetwork 和通过 MediaPlayer 的 RTSP 流

    我有一个应用程序正在使用bindProcessToNetwork 强制所有连接通过wifi 连接 这样做是因为 wifi 连接连接到没有互联网连接的相机 因此 Android 自然会尝试通过具有完整互联网连接的蜂窝数据连接推送所有流量 其代
  • 如何使用 iPhone 将照片上传到服务器?

    我正在编写一个 iPhone 应用程序 它可以拍摄照片然后将其上传到服务器 如何使用 Cocoa 将照片上传到服务器 我想我在某处使用 NSUrl Thanks Header interface EPUploader NSObject NS
  • 将 MQTTNet 服务器与 MQTT.js 客户端结合使用

    我已经启动了一个 MQTT 服务器 就像this https github com chkr1011 MQTTnet tree master例子 该代码托管在 ASP Net Core 2 0 应用程序中 但我尝试过控制台应用程序 但没有成
  • Git - 使用多个遥控器来跟踪同一分支和服务器

    我正在尝试在我与其他人共享的远程服务器上设置 Git 存储库 唯一的问题是 它位于我的局域网中 而我并不总是属于其中 我希望能够有 2 个遥控器使用同一个分支 全部同步 几乎像符号链接 但带有配置 更困难的是 如果我尝试在 LAN 中使用外
  • 游戏网络射弹实施/概念问题[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我正在尝试找到某种解决方案来解决同步射弹射击和游戏网络的常见问题 但我不确定什么是最合适的 这是一款 2D 动作横向卷轴游戏 带有多个射弹 没有即时攻

随机推荐

  • 无法将 line_profiler 与 Cython 一起使用

    根据以下问题的答案这个问题我试图使用线路分析器具有 cythonized 功能 关于上述问题 已接受的答案为我们提供了如何将其与 jupyter Notebook 一起使用的示例 但是 当我尝试构建pyx使用 disutils 文件它不起作
  • 根据角色隐藏链接

    我是 ASP MVC 新手 我正在尝试开发一个门户来维护员工数据 在我的系统中 只有 经理 有权创建员工 如何在经理登录时启用该链接并在员工登录时禁用该链接 谢谢 My View model IEnumerable
  • 如何检索 WinForms PictureBox 的缩放系数?

    我需要鼠标指针在 PictureBox 上的精确位置 我使用 PictureBox 的 MouseMove 事件 在此 PictureBox 上 我使用 缩放 属性来显示图像 获取鼠标在原始 未缩放 图像上的位置的正确方法是什么 有没有办法
  • 从不同文件夹导入文件

    我有这个文件夹结构 application app folder file py app2 some folder some file py 我如何导入函数file py 从内部some file py 我试过 from applicati
  • 在部分视图中使用部分

    在我的共享布局中 我希望有一个 脚本 部分来填充页面功能所需的所有脚本 布局 cshtml Scripts jquery 2 0 3 js type text javascript gt RenderSection Scripts requ
  • 如何在 Eloquent 中删除多态关系?

    我有一个这样的模型
  • 将 html 表单输入保存到 json 文件

    div class email section class subscribe div class subscribe pitch div section div
  • 供应商标识符和 iOS6

    The identifierForVendor需要 iOS 6 如果我的应用程序当前支持 iOS 4 因此我无法使用它 因为我的更新应该始终满足我的应用程序之前的最低要求 要求 你可以使用这个 NSString udid if SYSTEM
  • Android:无法构建 APK。发现多个文件具有独立于操作系统的路径“META-INF/android.arch.lifecycle_runtime.version”

    突然间 我在构建 APK 时遇到此错误 Error Execution failed for task app transformResourcesWithMergeJavaResForDevDebug gt More than one f
  • std::array 的嵌套聚合初始化[重复]

    这个问题在这里已经有答案了 我想知道 为什么要声明std arr下面的代码会产生错误 而c arr编译良好 struct S int a b S c arr 1 2 3 4 OK std array
  • 在哪里可以设置 crontab 将使用的环境变量?

    我每小时运行一个 crontab 运行它的用户在以下位置具有环境变量 bash profile当用户从终端运行作业时 它会起作用 但是 显然这些在运行时不会被 crontab 获取 我尝试过将它们设置为 profile and bashrc
  • pandas:如何根据所有列的总和选择行?

    如何根据 pandas 中的列总和选择行 假设我想选择列总和大于 0 的所有行 Use sum并设置axis 1 param In 59 df pd DataFrame a randn 10 b randn 10 c randn 10 df
  • FB.XFBML.parse() 对单个元素不执行任何操作

    我有一个大页面 底部有一个 加载更多 按钮 每次点击 加载更多 都会通过 AJAX 加载更多内容 该内容的一部分是类似 Facebook 的按钮 div class fb like div 加载附加内容后 我可以要求 Facebook 重新
  • 避免碰撞检测的 O(n^2) 复杂度

    我正在开发一个简单的基于图块的 2D 游戏 我有一个关卡 其中填充了可以与图块以及彼此交互的对象 检查与图块地图的碰撞相当容易 并且可以对具有线性复杂度的所有对象完成 但现在我必须检测对象之间的碰撞 现在我必须对照每个其他对象检查每个对象
  • android 模拟器从 emulator-5554 重命名为唯一字符串

    所以当启动模拟器时 adb devices 给我 emulator 5554 设备 一切花花公子直到这里 我的设想是创建一个模拟器农场 在多个设备上生成多个模拟器 为了唯一区分机器 A 上运行的 emulator 5554 和机器 B 上运
  • 检查奇数/偶数并更改数字大小的输出

    我有几个问题需要解决作业 并且有点卡住了 问题是编写一个程序 让用户输入一个奇数 检查它是奇数 然后根据输入的大小打印一个颠倒的星星金字塔 例如 如果您输入 5 则会出现 因此 我的问题有两个方面 1 如何检查它是偶数还是奇数 我试过if
  • Spring Boot Gradle Tomcat 8

    Spring Boot 参考指南提供了通过在 Maven 中设置自定义属性来升级到 Tomcat 8 的说明
  • 如果至少一个源不可用,则无法安装任何 NuGet 包

    以下问题在VS2013 Premium 中不存在 我只能在VS2015 Enterprise 中重现 我添加了自定义 NuGet 包源 如果该源不可用我无法安装any包 例如 EntityFramework 我收到一条消息 尝试收集包的依赖
  • PyTorch安装失败找不到满足要求的版本

    我正在尝试安装PyTorch在 Windows 10 专业版 64 位操作系统 PC 机上使用 PyCharm Community Edition 2020 2 3 x64 和 Python 3 9 0 我试过了 pip install t
  • 在Go中模拟tcp连接

    在 Go 中 TCP 连接 net Conn 是 io ReadWriteCloser 我想通过模拟 TCP 连接来测试我的网络代码 我有两个要求 要读取的数据存储在字符串中 每当写入数据时 我希望将其存储在某种稍后可以访问的缓冲区中 是否