初面网初面网

网络编程

tcp

package main

import (
	"fmt"
	"net"
	"time"
)

func main() {
	addr, _ := net.ResolveTCPAddr("tcp", "localhost:8080")
	listen, err := net.ListenTCP("tcp", addr)

	if err != nil {
		fmt.Println(err)
		return
	}

	fmt.Println("tcp server is open in ", "http://"+addr.String())

	for {
		conn, err := listen.Accept()
		if err != nil {
			break
		}

		fmt.Println(conn.RemoteAddr())
		conn.Write([]byte("hello world"))
		time.Sleep(2 * time.Second)
		conn.Close()
	}
}

HTTP

package main

import (
	"fmt"
	"net/http"
)

func Index(writer http.ResponseWriter, request *http.Request) {
	fmt.Println(request.URL.Path)
	writer.Write([]byte("你好"))
}

func main() {
	http.HandleFunc("/", Index)
	fmt.Println("Web server listen addr: http://localhost:8080")
	http.ListenAndServe("localhost:8080", nil)
}

gRPC

Websocket

更新于 2026/8/13