dart - 如何在 Dart 中定义传出 TCP 套接字的源端口
问题描述
我想建立一个 TCP 连接sourceAddress:x
-> host:port
,如何x
在 dart 中设置?
文档仅描述Socket.connect(dynamic host, int port, {dynamic sourceAddress, Duration? timeout}
了无法定义本地端口的地方x
。
在此处将端口附加到sourceAddress
变量会引发无效地址错误。也不RawSocket
接受本地端口参数。我这里不想使用ServerSocket,因为我实际上需要定义双方的端口。据我了解,这仅在 UDP 'connections' 的 dart 中受支持:
var s = await RawDatagramSocket.bind(
sourceAddress, x,
reusePort: true);
s.send(...)
至少在 python 中这是可能的(来自https://idea.popcount.org/2014-04-03-bind-before-connect/),它被称为 bind-before-connect。
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(sourceAddress, x)
s.connect(host, port)
你知道在飞镖中是否以及如何实现类似的结果?
解决方案
推荐阅读
- vba - 如何同时在多个 Wksheets 中搜索字符串?
- c# - 一个大视图中的几个小视图 mvvm light
- certificate - 用于验证 JWT 的 X.509 扩展
- javascript - Angular 2 内部 html 不适用于 html 标签
- gradle - 使用 Vulas 扫描 gradle 项目时出现问题
- sql - VB.net SQL 输出循环在下一个循环中重命名文件错误
- r - 在R中获取伽马分布参数(尤其是位置参数)的MLE
- c# - 窗体重新获得焦点时的 Windows 窗体事件
- java - 更新到 Safari 12.0 - Java 插件不再列出
- javascript - 如何调用restfull webservice并传递JSON数据并以字符串形式获取响应