1. 程式人生 > >簡單的SOCKET例子

簡單的SOCKET例子

編程 一個 ipv4 http str ont 參數 以及 簡單的

技術分享

定義實例socket.socket(),如果括號裏不寫參數,默認為IPV4+TCP

技術分享

我們猜測客戶端的完整代碼如下:

技術分享

同樣我們猜測服務端的代碼如下:

技術分享

實際上運行客戶端代碼:

技術分享

說明在py3裏,網絡編程發送必須是byte類型。所以客戶端那裏的send的字符串要為字節類型,

client.send(b"Hello World!"),前面加了一個字母b

同樣在服務端也會報錯:

技術分享

這個原因是server就是一個連接,這個連接進程不能又在一邊等待accept(),一邊接收recv(1024)。

所以我們要把客戶端連接過來的連接名稱以及IP地址進行標記區分出來。

技術分享

技術分享

我們把conn和addr打印出來看看:

技術分享技術分享

前面就是conn客戶端連接進來的連接實例,協議是ipv4,使用的是tcp,laddr是localhost addr本地地址127.0.0.1+端口號6969,raddr是remote addr,也就是遠程客戶端地址127.0.0.1+端口號3630

後面是addr,也就是ip地址127.0.0.1+端口號3630,這個是客戶端的IP+客戶端端口號。

最終客戶端代碼如下:

技術分享

最終服務端代碼如下:

技術分享

簡單的SOCKET例子