Go语言实现socket实例
本文实例讲述了Go语言实现socket的方法。分享给大家供大家参考。具体分析如下:
用golang不用他的net包还有什么意义,这里提供一个测试代码:
server.go服务端:
packagemain
import(
"fmt"
"log"
"net"
"bufio"
)
funchandleConnection(connnet.Conn){
data,err:=bufio.NewReader(conn).ReadString('\n')
iferr!=nil{
log.Fatal("getclientdataerror:",err)
}
fmt.Printf("%#v\n",data)
fmt.Fprintf(conn,"helloclient\n")
conn.Close()
}
funcmain(){
ln,err:=net.Listen("tcp",":6010")
iferr!=nil{
panic(err)
}
for{
conn,err:=ln.Accept()
iferr!=nil{
log.Fatal("getclientconnectionerror:",err)
}
gohandleConnection(conn)
}
}
client.go客户端:
packagemain
import(
"fmt"
"net"
"bufio"
)
funcmain(){
conn,err:=net.Dial("tcp",":6010")
iferr!=nil{
panic(err)
}
fmt.Fprintf(conn,"helloserver\n")
data,err:=bufio.NewReader(conn).ReadString('\n')
iferr!=nil{
panic(err)
}
fmt.Printf("%#v\n",data)
}
希望本文所述对大家的Go语言程序设计有所帮助。