服务器客户端通信Python

2024-02-11

Server

import socket
import sys
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

host= 'VAC01.VACLab.com'
port=int(2000)
s.bind((host,port))
s.listen(1)

conn,addr =s.accept()

data=s.recv(100000)

s.close

CLIENT

import socket
import sys

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

host="VAC01.VACLab.com"
port=int(2000)
s.connect((host,port))
s.send(str.encode(sys.argv[1]))

s.close()

我希望服务器能够接收客户端发送的数据。

当我尝试这个时出现以下错误

客户端

回溯(最近一次调用最后一次): 文件“Client.py”,第 21 行,位于 s.send(sys.argv[1]) 类型错误:“str”不支持缓冲区接口

服务器端

文件“Listener.py”,第 23 行,位于 数据=s.recv(100000) socket.error: [Errno 10057] 发送或接收数据的请求被禁止,因为 ause 套接字未连接并且(当使用 sendto 呼叫)未提供地址


在服务器中,您使用倾听套接字来接收数据。它仅用于接受新连接。

改成这样:

conn,addr =s.accept()

data=conn.recv(100000)  # Read from newly accepted socket

conn.close()
s.close()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

服务器客户端通信Python 的相关文章

随机推荐