python为什么 用 浏览器 连接不上我的socket服务端。

import socket
def main():
sk = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sk.bind(("127.0.0.1",8000))
sk.listen(5)
while True:
conn,addr = sk.accept()
conn.sendall(bytes("HTTP/1.1 201 OK\r\n\r\n", "utf8"))
conn.sendall("hello".encode("utf8"))
conn.close()
if name == "__main__":
main()

在浏览器输入 ip端口为啥 连接不到、

建议断点调试,看看效果

连接应该是正常的,可能浏览器解析不到数据,建议还是用套接字去连吧。

import socket
def main():
    sk = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    sk.bind(("127.0.0.1",8000))
    print(sk)
    sk.listen(5)
    # 设置成阻塞状态
    sk.setblocking(True)
    while True:
        conn,addr = sk.accept()
        # 将连接中的内容读出来
        print(conn.recv(1024))
        conn.sendall(bytes("HTTP/1.1 201 OK\r\n\r\n", "utf8"))
        conn.sendall("hello".encode("utf8"))
        conn.close()

if __name__ == "__main__":
    main()