在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网络编程的基本步骤。你可以根据需要修改示例代码,以实现更复杂的网络功能。