本文實例講述了Go語言實現(xiàn)socket的方法。分享給大家供大家參考。具體分析如下:
用golang不用他的net包還有什么意義,這里提供一個測試代碼:
server.go 服務(wù)端:
復(fù)制代碼 代碼如下:
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 客戶端:
復(fù)制代碼 代碼如下:
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語言程序設(shè)計有所幫助。
您可能感興趣的文章:- golang基于websocket實現(xiàn)的簡易聊天室程序
- golang網(wǎng)絡(luò)socket粘包問題的解決方法
- 剖析Go編寫的Socket服務(wù)器模塊解耦及基礎(chǔ)模塊的設(shè)計
- Go語言基于Socket編寫服務(wù)器端與客戶端通信的實例
- 利用Go語言初步搭建一個web應(yīng)用的教程
- Go語言實現(xiàn)的web爬蟲實例
- Go語言實現(xiàn)簡單的一個靜態(tài)WEB服務(wù)器
- Python Web框架Pylons中使用MongoDB的例子
- go的websocket實現(xiàn)原理與用法詳解