大家都知道Web服務是基於HTTP協議的,而HTTP協議又是TCP協議上的應用層協議。因此我們在開發一個Web服務之前,我們先介紹一下如何使用Go語言開發一個基於TCP的客戶端與服務端程序(關於TCP協議的原理可以參考本號之前的文章《從socket到TCP協議,透徹理解網絡編程》)。

程序比較簡單,服務端用於等待客戶端的連接,連接建立成功後,如果接到客戶端的數據,則原封不動的返回相同的數據。客戶端建立與服務端的連接,連接建立成功後向服務端發送字符串數據,並等待接收服務端的返回。
服務端
前面已經介紹,服務端用於等待客戶端的連接,連接建立成功後,如果接到客戶端的數據,則原封不動的返回相同的數據。如下是服務端的代碼,監聽的端口為8080。

客戶端
客戶端建立與服務端的連接,連接建立成功後向服務端發送字符串數據,並等待接收服務端的返回。客戶端收到服務端的數據後會在終端打印出來。

測試驗證
測試驗證也比較簡單,首先需要注意觀察一下服務端的ip地址,然後在服務端啟動服務端的程序。假設服務端的地址為192.168.142.128,此時在客戶端的中斷輸入如下命令:
./client 192.168.142.128:8080
此時可以看到有Hello World!字符串輸出。說明整個通信過程是正確的。如果會用Wireshark或者tcpdump等網絡監測工具,可以看一下整個交互過程
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/281204.html