TCP在python中如何連接服務(wù)器?
本文教程操作環(huán)境:windows7系統(tǒng)、Python3.9.1,DELLG3電腦。
1、服務(wù)器說(shuō)明
服務(wù)器進(jìn)程首先要綁定一個(gè)端口并監(jiān)聽(tīng)來(lái)自其他客戶端的連接。如果某個(gè)客戶端連接過(guò)來(lái)了,服務(wù)器就與該客戶端建立Socket連接,隨后的通信就靠這個(gè)Socket連接了。
2、注意
IP127.0.0.1指本機(jī)回環(huán)地址,永遠(yuǎn)指向本機(jī);
port端口linux用1000以上,這是一個(gè)兩字節(jié)數(shù),范圍[0,65535],共65536種狀態(tài),當(dāng)前此協(xié)議的此端口不能被別人占用;
server.bild()綁定一個(gè)二元組,不可多次綁定同一個(gè)端口;
listen()監(jiān)聽(tīng),不可多次監(jiān)聽(tīng),真正的顯示出端口;
打開(kāi)的資源必須關(guān)閉,會(huì)占用文件描述符fd。
3、實(shí)例
(1)創(chuàng)建一個(gè)基于IPv4和TCP協(xié)議的Socket:
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
(2)要綁定監(jiān)聽(tīng)的地址和端口。
服務(wù)器可能有多塊網(wǎng)卡,可以綁定到某一塊網(wǎng)卡的IP地址上,也可以用0.0.0.0綁定到所有的網(wǎng)絡(luò)地址,還可以用127.0.0.1綁定到本機(jī)地址
127.0.0.1是一個(gè)特殊的IP地址,表示本機(jī)地址,如果綁定到這個(gè)地址,客戶端必須同時(shí)在本機(jī)運(yùn)行才能連接,也就是說(shuō),外部的計(jì)算機(jī)無(wú)法連接進(jìn)來(lái)。
(3)端口號(hào)需要預(yù)先指定。
因?yàn)槲覀儗懙倪@個(gè)服務(wù)不是標(biāo)準(zhǔn)服務(wù),所以用9999這個(gè)端口號(hào)
#監(jiān)聽(tīng)端口:
s.bind(('127.0.0.1',9999))
(4)緊接著,調(diào)用listen()方法開(kāi)始監(jiān)聽(tīng)端口,傳入的參數(shù)指定等待連接的數(shù)量:
s.listen(5)
print('Waitingforconnection...')
我們?cè)谑褂猛ㄐ诺臅r(shí)候,是離不開(kāi)服務(wù)器的連接,隨后實(shí)現(xiàn)與客戶端之間的互相交流。TCP的服務(wù)器連接,需要通過(guò)Socket來(lái)實(shí)現(xiàn)。相信大家在之前對(duì)這種通信方式,都有所接觸過(guò)。
以上就是TCP在python中連接服務(wù)器的方法,在看完具體的連接步驟后,大家可以就上面的方法展開(kāi)練習(xí),看看能否成功連接服務(wù)器。更多Python學(xué)習(xí)教程請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。