tcp協議下的套接字程式設計 小哥哥 小姐姐私密聊天

2021-08-19 20:24:31 字數 1150 閱讀 6647

建立伺服器:
from socket import *

# 建立流式套接字

sockfd = socket(af_inet, sock_stream, 0)

# 繫結ip和埠號

sockfd.bind(("主機ip位址,可以直接用自己電腦的", 6666))

# 設定監聽套接字,建立監聽佇列

sockfd.listen(5)

while true:

print("waiting for connect...")

# 等待客戶端連線

connfd, addr = sockfd.accept()

print("connect from", addr)

while true:

# 收訊息

data = connfd.recv(1024)

if not data:

break

print("小姐姐", data.decode())

# 發訊息

fanhui = input("小哥哥:")

connfd.send(fanhui.encode())

# 關閉套接字

connfd.close()

sockfd.close()

建立客戶端:
from socket import *

# 建立套接字

sockfd = socket(af_inet, sock_stream)

print("建立的套接字是:", sockfd)

# 發起連線

sockfd.connect(("主機ip位址,可以直接用自己電腦的", 6666))

while true:

msg = input("小姐姐》")

# 傳送訊息

sockfd.send(msg.encode())

if not msg:

break

# 接受訊息

data = sockfd.recv(1024)

print("小哥哥", data.decode())

# 關閉

sockfd.close()

基於TCP協議的套接字程式設計

socket是應用層與tcp ip協議族通訊的中間軟體抽象層,它是一組介面。在設計模式中,socket其實就是乙個門面模式,它把複雜的tcp ip協議族隱藏在socket介面後面,對使用者來說,一組簡單的介面就是全部,讓socket去組織資料,以符合指定的協議。socket模板已經為我們封裝好了,我...

基於TCP協議的套接字程式設計

基於socket通訊的內部演算法,當傳送的訊息為空的時候,接收端不會收到訊息,而傳送端向下執行到recv,兩端出於僵持狀態。所以在傳送端需要有個判斷,如果傳送的為空,則重新輸入傳送內容。socket是應用層與tcp ip協議通訊的中間軟體抽象層,它是一組介面。import socket 買手機 ph...

基於tcp協議的套接字

簡單版本 一 服務端 import socket 1 買手機 拿到套接字物件,用來鏈結建立鏈結 phone socket.socket socket.af inet,socket.sock stream tcp稱為流式協議sock stream,udp稱為資料報協議sock dgram print ...