您好,登錄后才能下訂單哦!
在Go語言中,可以使用內置的net包來進行網絡編程。下面是一個簡單的示例,演示了如何創建一個簡單的TCP服務器和客戶端。
首先,創建一個TCP服務器:
package main
import (
"fmt"
"net"
)
func handleConnection(conn net.Conn) {
defer conn.Close()
buf := make([]byte, 1024)
for {
n, err := conn.Read(buf)
if err != nil {
fmt.Println("Error reading:", err)
return
}
fmt.Printf("Received data: %s\n", string(buf[:n]))
}
}
func main() {
address := "localhost:8080"
listener, err := net.Listen("tcp", address)
if err != nil {
fmt.Println("Error listening:", err)
return
}
defer listener.Close()
fmt.Println("Server listening on", address)
for {
conn, err := listener.Accept()
if err != nil {
fmt.Println("Error accepting connection:", err)
continue
}
go handleConnection(conn)
}
}
然后,創建一個TCP客戶端:
package main
import (
"fmt"
"net"
)
func main() {
address := "localhost:8080"
conn, err := net.Dial("tcp", address)
if err != nil {
fmt.Println("Error connecting:", err)
return
}
defer conn.Close()
fmt.Println("Connected to server on", address)
message := "Hello, server!"
_, err = conn.Write([]byte(message))
if err != nil {
fmt.Println("Error writing:", err)
return
}
fmt.Println("Message sent:", message)
}
可以分別運行這兩個程序,客戶端程序將連接到服務器并發送消息,服務器程序將接收消息并打印出來。這是一個簡單的示例,你可以根據自己的需求進一步擴展和優化。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。