suchen

Heim  >  Fragen und Antworten  >  Hauptteil

python3.x – Python3-Socket sendall erscheint 10057

Als ich Python lernte, um ein kleines Socket-Beispiel zu erstellen, stellte ich fest, dass die folgenden Probleme auftreten, solange sendall verwendet wird.

server_demo:

#!/usr/bin/env python
# _*_coding:utf8_*_

import socket

obj_socket = socket.socket()
# 绑定端口
obj_socket.bind(('127.0.0.1', 9999))
# 设置最大连接数
obj_socket.listen(5)

while True:
    # 阻塞等待客户端连接
    conn, address = obj_socket.accept()
    print(address, conn)
    # 在python2.7中可以直接发送字符串,但是在python3中都是字节
    obj_socket.sendall(bytes('你好', encoding='utf-8'))

client_demo:


#!/usr/bin/env python
# _*_coding:utf8_*_
import socket

obj_socket = socket.socket()

obj_socket.connect(('127.0.0.1', 9999))
# 阻塞至服务器回复  最多接收1024bytes 如果超过会再次接收
res_bytes = obj_socket.recv(1024)
res_str = str(res_bytes, encoding='utf-8')

print(res_str)

obj_socket.close()

Nachdem ich viele Lösungen gesucht hatte, habe ich versucht, die Firewall auszuschalten, aber es hat immer noch nicht funktioniert.

怪我咯怪我咯2735 Tage vor941

Antworte allen(1)Ich werde antworten

  • 某草草

    某草草2017-06-28 09:26:18

    试下

    obj_socket.sendall(bytes('你好', encoding='utf-8'))
    换成:
    conn.sendall(bytes('你好', encoding='utf-8'))
    

    Antwort
    0
  • StornierenAntwort