socket被翻譯為「套接字」,它是計算機之間進行通訊的一種約定或一種方式。
socket的生命週期如下:
1.將socket與位址和埠進行繫結
2.開啟服務端,等待連線
3.建立連線
4.傳送和接收資料
5.關閉連線,關閉服務端
簡單來說,就是開啟,建立連線,傳輸資料,關部的過程
具體**如下:
與瀏覽器通訊為例:
import socket
sk = socket.socket() #socket模組中socket類
sk.bind(('127.0.0.1',9001)) #繫結位址和埠
sk.listen() #監聽模式,開啟服務端,等待連線
conn,addr = sk.accept() #conn為建立的連線 addr為對方位址
# conn.send(b'hello') #傳送資訊,b代表二進位制型別
#with open('hello.html','rb') as f: #開啟html檔案,以二進位制讀取
# data = f.read()
#conn.send(data)
from_browser_msg = conn.recv(1024) #接收
print(from_browser_msg)
conn.close() #關閉連線
sk.close() #關部服務端
1.、\r\n\r\n稱crlf ,是指回車(carriage return)+換行(line feed),是http響應的格式——響應頭』http/1.1 200 ok』後面要接\r\n\r\n,再接內容。
2.send內容可以是字串轉的二進位制也可以是html檔案。
基於Python的Socket程式設計
socket基礎 socket的英文原義是 孔 或 插座 最初作為bsd unix的程序通訊機制,也被稱作 套接字 用於描述ip位址和埠,是乙個通訊鏈的控制代碼,可用來實現不同虛擬機器或不同計算機之間的通訊。在internet上的主機一般執行了多個服務軟體,同時提供幾種服務。每種服務都開啟乙個soc...
Python基於socket實現簡單套接字通訊
客戶端的connect對應的服務端的accept 三次握手 服務端既可以發訊息也可以收訊息 客戶端 coding utf 8 import socket 1 先有手機 socket型別 網路通訊 流式就是tcp協議 phone socket.socket socket.af inet,socket....
基於TCP的socket程式設計
sockets 套接字 程式設計有三種,流式套接字 sock stream 資料報套接字 sock dgram 原始套接字 sock raw 基於 tcp的 socket 程式設計是採用的流式套接字。在這個程式中,將兩個工程新增到乙個工作區。要鏈結乙個 ws2 32.lib 的庫檔案。伺服器端程式設...