首页 > 解决方案 > Python套接字服务器-TypeError:需要像对象一样的咬,而不是“str”

问题描述

我找到了这个线程:Python sockets error TypeError: a bytes-like object is required, not 'str' with send function

但我的问题是 - 当我b在我的 HTML 字符串前面添加一个或对它进行编码时,我在浏览器上打开网站时不再收到错误 - 但我也不再看到该网站!我只是得到一个空白的白色屏幕,有时会出现一个错误,表明它无法加载该站点。为什么会这样,我该如何预防?这在 micropython 中一切正常,但在我在我的计算机上使用的 python 3 中却不行。

这是我使用的代码:

    # Complete project details at https://RandomNerdTutorials.com
import socket
html = b"""<html><head><title>TEST</title>TEST</head></html>"""

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', 80))
s.listen()

while True:
    print(s)
    conn, addr = s.accept()
    print('Got a connection from %s' % str(addr))
    response = html
    conn.send(html)
    conn.close()

标签: pythonhtmlsocketsencodingserver

解决方案


推荐阅读