ConnectionRefusedError套筒Python

发布于 2025-02-13 23:39:25 字数 1154 浏览 0 评论 0原文

我使用数据包套接字编写了简单的客户端/服务器程序,但获取错误,

这是我的代码:

import socket
import random
import sys

def double_server(port=8080):
    with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
        s.bind(('', port))
        print('Start work!')
        s.listen(5)
        while True:
            conn, addr = s.accept()
            handle_connection(conn, addr)


def handle_connection(conn, addr):
    print('Connected: ', addr)
    with conn:
        while True:
            data = conn.recv(1024)
            if not data:
                break
            n = int(data.decode())
            res = f"{n*2}\n".encode()
            conn.send(res)

def double_client(port=8080):
    with socket.create_connection(('127.0.0.1', port)) as s:
        f = s.makefile(mode='rw', buffering=1, newline='\n')
        while True:
            n = random.randrange(10)
            f.write(f'{n}\n')
            print(n, f.readline().strip())

if __name__ == '__main__':
    if sys.argv[1] == 'server':
        double_server()

    elif sys.argv[1] == 'client':
        double_client()

但是我得到了ConnectionRefusedError:[Errno 61]连接拒绝 先感谢您

i wrote simple client/server program using packet socket but get an error

Here's my code:

import socket
import random
import sys

def double_server(port=8080):
    with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
        s.bind(('', port))
        print('Start work!')
        s.listen(5)
        while True:
            conn, addr = s.accept()
            handle_connection(conn, addr)


def handle_connection(conn, addr):
    print('Connected: ', addr)
    with conn:
        while True:
            data = conn.recv(1024)
            if not data:
                break
            n = int(data.decode())
            res = f"{n*2}\n".encode()
            conn.send(res)

def double_client(port=8080):
    with socket.create_connection(('127.0.0.1', port)) as s:
        f = s.makefile(mode='rw', buffering=1, newline='\n')
        while True:
            n = random.randrange(10)
            f.write(f'{n}\n')
            print(n, f.readline().strip())

if __name__ == '__main__':
    if sys.argv[1] == 'server':
        double_server()

    elif sys.argv[1] == 'client':
        double_client()

But i got ConnectionRefusedError: [Errno 61] Connection refused
Thank you in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文