我正在尝试创建一个客户端来连接到具有给定 URL 地址的服务器。
我就是这样用的
host_ip = socket.gethostbyname('HOST_NAME')
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.bind(('127.0.0.1', 0))
sock.connect((host_ip, 8080))
但打印出以下错误
OSError: [Errno 22] Invalid argument
有人可以解释一下为什么错误并给我一个解决方案吗?
最佳答案
您不必绑定(bind)
您的套接字,这是在服务器端完成的。
这是来自 documentation for socket
的示例代码:
import socket
HOST = 'your-url.net' # The remote host
PORT = 8080 # The same port as used by the server
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.connect((HOST, PORT))
s.sendall(b'Hello, world')
data = s.recv(1024)
print('Received', repr(data))
这是一个简单的代码片段,它连接到服务器,发送一些数据,并打印响应。
关于python - 如何使用 url 将 python 套接字客户端连接到服务器套接字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43018992/