检查 Golang conn.Write 中的服务器可达性

我正在开发一个尝试将一些数据发送到远程服务器的应用程序。获得主机名后,我通过使用net.Dialer.DialContext. 有一次,我解析了主机名,我继续使用conn.Write方法将数据写入连接。

conn, err := d.DialContext(ctx, string(transport), addr) 
_, err := client.conn.Write([]byte(msg))

面临的错误:我观察到由于某些问题,我无法 ping 我的服务器。令人惊讶的是,从 DialContext 获得的 conn 在执行此操作时并没有抱怨conn.Write,它一直在向同一个连接写入。

有人可以帮助我修改我的写作方法,以便在无法访问目标服务器的情况下出现错误吗?


慕姐8265434
浏览 75回答 1
1回答

MMTTMM

从此UDP 连接示例“已连接”的 UDP 套接字模拟发送失败的最佳方法是保存 ICMP 响应,并在下一次写入时将其作为错误返回。所以试着(为了测试)再做一次, conn.Write以确认这次你确实会出错。
打开App,查看更多内容
随时随地看视频慕课网APP