golang socket 测试

本文通过一个简单的示例展示了如何使用Golang构建TCP服务器和客户端,包括服务器端接收客户端消息并返回响应,以及客户端连接到服务器发送消息并接收回复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用golang不用他的net包还有什么意义,又一个测试代码.

server.go 服务端

package main
      
import (
    "fmt"
    "log"
    "net"
    "bufio"
)
      
func handleConnection(conn net.Conn) {
    data, err := bufio.NewReader(conn).ReadString('\n')
    if err != nil {
        log.Fatal("get client data error: ", err)
    }
      
    fmt.Printf("%#v\n", data)
      
    fmt.Fprintf(conn, "hello client\n")
    conn.Close()
}
      
func main() {
    ln, err := net.Listen("tcp", ":6010")
    if err != nil {
        panic(err)
    }
      
    for {
        conn, err := ln.Accept()
        if err != nil {
            log.Fatal("get client connection error: ", err)
        }
      
        go handleConnection(conn)
    }
}

client.go 客户端

package main
   
import (
    "fmt"
    "net"
    "bufio"
)
   
func main() {
    conn, err := net.Dial("tcp", ":6010")
    if err != nil {
        panic(err)
    }
   
    fmt.Fprintf(conn, "hello server\n")
   
    data, err := bufio.NewReader(conn).ReadString('\n')
    if err != nil {
        panic(err)
    }
   
    fmt.Printf("%#v\n", data)
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值