tcp程式設計的操作步驟:
伺服器和客戶端
服務端:
step1:指定自己的ip(本機ip)和埠
net.resolvetcpaddr("tcp4",string)-->tcpaddr
step2:獲取***,監聽埠
listener,err:=net.listentcp(tcpaddr)
step3:接收客戶端的連線請求
listener.accept()-->conn
step4:資料互動
conn.read()或者conn.write() 讀或者寫
step5:關閉資源
conn.close()
packagemainimport(
"net"
"fmt"
)funcmain() }
fmt.printf("%t\n"
, conn) //*net.tcpconn
fmt.println("已有客戶端連入。。"
,conn.remoteaddr())
//step4:資料互動
bs := make( byte
,512)
n,err:=conn.read(bs)
fmt.println(n,err)
fmt.println("客戶端說:"
, string(bs[:n]))
conn.write( byte("我是伺服器"))
//step5:關閉資源
conn.close()
}
客戶端:
step1:指定伺服器的ip和埠
step2:申請連線指定伺服器
net.dialtcp("tcp",tcpaddr)-->tcpconn
step3:資料互動
tcpconn.read()或者tcpconn.write()
step4:關閉資源
tcp.close()
packagemainimport(
"net"
"fmt"
)funcmain() }
fmt.printf("%t\n"
, tcpconn) //*net.tcpconn
fmt.println("客戶端已經連線成功。。。")
,tcpconn.remoteaddr())
//step3:資料互動
n,err:=tcpconn.write( byte("hello"))//寫出的位元組的數量
fmt.println(n,err)
fmt.println("資料已經寫出。。")
bs := make( byte
,512)
n,err=tcpconn.read(bs)
fmt.println(string(bs[:n]))
//step4.關閉資源,斷開連線
tcpconn.close()//}/*
客戶端是你自己
客戶端讀取鍵盤輸入,傳遞給服務端一句話
服務端是你同桌
服務端讀取鍵盤輸入,傳遞給客戶端一句話
*/
Go語言中Socket通訊之Tcp客戶端
1 用法 1 定義遠端ip位址。使用net.resolvetcpaddr 方法,定義乙個tcp位址,做為目標連線位址。2 呼叫net.dialtcp tcp nil,remoteaddress 方法,建立與remoteaddress的連線。這裡的三引數分別是 協議名 本地ip 遠端ip 3 可以學著...
網路程式設計之TCP客戶端開發和TCP服務端開發
建立客戶端套接字物件 和服務端套接字建立連線 傳送資料 接收資料 關閉客戶端套接字 import socket if name main 建立tcp客戶端套接字 1.af inet 表示ipv4 2.sock stream tcp傳輸協議 tcp client socket socket.socke...
Socket程式設計 tcp服務端和客戶端通訊
1.基於tcp協議的socket通訊類似於b s架構,面向連線,但不同的是伺服器端可以向客戶端主動推送訊息。使用tcp協議通訊需要具備以下幾個條件 1 建立乙個套接字 socket 2 繫結伺服器端ip位址及埠號 伺服器端 3 利用listen 方法開啟監聽 伺服器端 4 利用accept 方法嘗試...