在CentOS上進行Golang網絡編程,你需要遵循以下步驟:
sudo yum install golang
~/.bashrc
或~/.bash_profile
文件中添加以下內容:export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
然后運行source ~/.bashrc
或source ~/.bash_profile
使設置生效。
network-programming
的目錄:mkdir -p $GOPATH/src/network-programming
cd $GOPATH/src/network-programming
package main
import (
"bufio"
"fmt"
"net"
"os"
)
func main() {
listener, err := net.Listen("tcp", ":8080")
if err != nil {
fmt.Println("Error listening:", err.Error())
os.Exit(1)
}
defer listener.Close()
fmt.Println("Listening on :8080")
for {
conn, err := listener.Accept()
if err != nil {
fmt.Println("Error accepting:", err.Error())
os.Exit(1)
}
go handleRequest(conn)
}
}
func handleRequest(conn net.Conn) {
defer conn.Close()
reader := bufio.NewReader(conn)
message, err := reader.ReadString('\n')
if err != nil {
fmt.Println("Error reading:", err.Error())
return
}
fmt.Print("Message received: ", string(message))
conn.Write([]byte("Hello from the server!\n"))
}
go run main.go
telnet
或nc
命令來測試你的TCP服務器:telnet localhost 8080
或者
nc localhost 8080
輸入一些文本并按回車鍵,你應該會看到服務器返回的消息。
這就是在CentOS上進行Golang網絡編程的基本步驟。你可以根據需要修改示例代碼,以實現更復雜的網絡功能。