tcp连接
服务端
import socket
ADDRESS = "127.0.0.1"
PORT = 8080
def start_server():
try:
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind((ADDRESS, PORT))
print("bind success")
server_socket.listen()
print("listen success")
while True:
conn, address = server_socket.accept()
print("conn:{}, address:{}".format(conn, address))
print("msg:{}".format(conn.recv(1024).decode("utf-8")))
except KeyboardInterrupt:
print("start_server interrupt")
if __name__ == "__main__":
start_server()
客户端
import socket
import json
ADDRESS = "127.0.0.1"
PORT = 8080
def start_client(msg):
try:
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect((ADDRESS, PORT))
data = json.dumps({"msg":msg})
client_socket.send(data.encode("utf-8"))
except Exception as e:
print("start_client fail:{}".format(e))
if __name__ == "__main__":
start_client("msg")
udp连接
服务端
import socket, json
def start_udp_server():
# socket.SOCK_DGRAM:为udp
try:
server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server_socket.bind(("", 5555))
print("bind success")
while True:
data, conn = server_socket.recvfrom(1024)
print("conn:{}".format(conn))
print("data:{}".format(data.decode("utf-8")))
data = json.dumps({"msg":"456"})
server_socket.sendto(data, conn)
except KeyboardInterrupt:
print("start_udp_server interrupt")
if __name__ == "__main__":
start_udp_server()
客户端
import socket, json
def start_udp_client():
client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
send_addr = ("localhost", 5555)
data=json.dumps({"msg":"123"})
client_socket.sendto(data.encode("utf-8"), send_addr)
client_socket.close()
if __name__ == "__main__":
start_udp_client()