首页 > 解决方案 > python socket将数据从客户端发送到服务器

问题描述

我正在构建一个简单的 Python 服务器,它将从客户端接收数据并将其打印在屏幕上。到目前为止,这是我的代码。

服务器代码:

import socket

def server(interface, port):
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
        sock.bind((interface, port))
        sock.listen(1)
        print('Listening at', sock.getsockname())

        while True:
                sc, sockname = sock.accept()
                print('We have accepted a connection from', sockname)
                print(' Socket name:', sc.getsockname())
                print(' Socket peer:', sc.getpeername())

if __name__ == '__main__':
    server('0.0.0.0', 8000)

客户代码:

import socket

def client(host, port):
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.connect((host, port))
        print('Client has been assigned socket name', sock.getsockname())

if __name__ == '__main__':
    client('localhost', 8000)

无论我如何尝试将数据从客户端发送到服务器,它总是错误地说:传输端点未连接。

标签: pythonsockets

解决方案


尝试使用127.0.0.1192.168.1.X(您可以通过ipconfig在 cmd 中使用找到的私有 ip)而不是本地主机,这对我有用


推荐阅读