ソケットtcp
tcpサービス側
サービス側が満たすべき特性1、常に対外的にサービスを提供する2、同時的にサービスを提供する
tcpクライアント
サービス側が満たすべき特性1、常に対外的にサービスを提供する2、同時的にサービスを提供する
import socket
phone=socket.socket(socket.AF_INET,socket.SOCK_STREAM) # , , SOCK_STREAM=tcp
phone.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1) # , bind
phone.bind(("127.0.0.1",8080)) # ip port,
phone.listen(5) # 5
print('starting %s:%s' %("127.0.0.1",8080))
while True:
conn,client_addr = phone.accept() #
print((client_addr))
while True: # ,
try:
data = conn.recv(1024) #
if len(data) == 0: # linux
break
print(" :",data.decode('utf-8'))
conn.send(data.upper()) #
except Exception:
break
conn.close() # , , ,
phone.close() #
tcpクライアント
import socket
phone = socket.socket(socket.AF_INET,socket.SOCK_STREAM) # SOCK_STREAM =》 tcp
phone.connect(("127.0.0.1",8080))
while True:
msg = input(">>>:").strip()
phone.send(msg.encode('utf-8'))
data = phone.recv(1024)
print(" : ",data.decode('utf-8'))
phone.close()