go网络编程
文章平均质量分 60
流光影下
一个爱编程的技术宅
展开
-
go语言gRPC编程构建微服务
【代码】go语言gRPC编程构建微服务。原创 2024-02-23 09:30:00 · 413 阅读 · 0 评论 -
go RPC编程
import ("io""net"// 测试网络中读写数据的情况// 会话连接的结构体// 构造方法// 向连接中去写数据// 定义写数据的格式// 4字节头部 + 可变体的长度// 写入头部,记录数据长度// 将整个数据,放到4后边if err!= nil {return errreturn nil// 从连接读数据// 读取头部记录的长度// 按长度读取消息if err!= nil {// 读取数据if err!原创 2024-02-22 17:44:17 · 601 阅读 · 0 评论 -
go语言WebSocket编程
WebSocket是一种在单个TCP连接上进行全双工通信的协议WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输需要安装第三方包:cmd中:go get -u -v github.com/gorilla/websocket。原创 2024-01-30 15:54:14 · 916 阅读 · 0 评论 -
go语言http编程
Go语言内置的net/http包提供了HTTP客户端和服务端的实现。// ...// ...// ...Client和Transport类型都可以安全的被多个goroutine同时使用。出于效率考虑,应该一次建立、尽量重用。原创 2024-01-30 09:44:37 · 337 阅读 · 0 评论 -
go语言socket编程
包头部分的长度是固定的,并且它存储了包体的长度,根据包头长度固定以及包头中含有包体长度的变量就能正确的拆分出一个完整的数据包。将上面的代码编译成client或client.exe可执行文件,先启动server端再启动client端,在client端输入任意内容回车之后就能够在server端看到client端发送的数据,从而实现TCP通信。我们可以自己定义一个协议,比如数据包的前4个字节为包头,里面存储的是发送的数据的长度。主要原因就是tcp数据传递模式是流模式,在保持长连接的时候可以进行多次的收和发。原创 2024-01-29 19:29:28 · 1545 阅读 · 0 评论