问题描述
我一直在使用 Python 3.7
中的socket
库制作程序
程序具有发送和接收数据(字符串)的角色。
我已经检查过它在 wifi(无线局域网) 环境中工作。
但是,在有线和无线之间或有线和有线之间的环境中,我的套接字通信代码不工作。我不知道为什么。
以下是我制作的代码。我已经排除了不重要的部分。
服务器端
import socket
import os
# device's IP address
SERVER_HOST = "<server ip address>"
SERVER_PORT = 5001
USERS = dict()
# create the server socket
# TCP socket
s = socket.socket(socket.AF_INET,socket.soCK_DGRAM)
# bind the socket
s.bind((SERVER_HOST,SERVER_PORT))
print(f"[*] Server Starts - {SERVER_HOST}:{SERVER_PORT}")
data,addr = s.recvfrom(1024)
RCV = data.decode('utf-8')
while RCV != 'ŒEXITŒŒSERVERŒ':
...(skip)...
s.close()
客户端
import socket
import os
BUFFER_SIZE = 4096 # send 4096 bytes each time step
# the ip address or hostname of the server
host = "<server ip address>"
port = 5001
# create the client socket
s = socket.socket(socket.AF_INET,socket.soCK_DGRAM)
print(f"[+] Connecting to {host}:{port}")
s.connect((host,port))
print("[+] Connected.")
USER = input("[@] Enter Your User Name(Nickname): ")
USER += "ŒSEPŒ"
s.sendto(USER.encode('utf-8'),(host,port))
while True:
...(skip)...
如果您需要更多信息来解决这个问题,请给我留言。我会在请求中添加更多信息。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)