当前位置 博文首页 > Go语言实现socket实例

    Go语言实现socket实例

    作者:不吃皮蛋 时间:2021-02-13 09:05

    本文实例讲述了Go语言实现socket的方法。分享给大家供大家参考。具体分析如下:

    用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)
    }

    希望本文所述对大家的Go语言程序设计有所帮助。

    js
    下一篇:没有了