尝试连接到本地主机套接字时,web浏览器上的“连接已重置”

2024-10-01 17:24:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用python语言制作一个服务器,使用可以在任何web浏览器上连接的套接字。我使用主机作为“localhost”,端口作为8888。在

当我尝试连接到它时,我想要显示的内容会在一瞬间显示出来,然后它会随着浏览器说“连接已重置”而消失。
我已经让它做了一些非常简单的事情来测试它是否还能继续工作,它确实做到了。在

有办法阻止这一切吗?在

import time
import socket
HOST = "localhost"
PORT = 8888

def function(sck):
    sck.send(bytes("test"),"UTF-8"))
    sck.close()

ssck=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
ssck.bind((HOST,PORT))
ssck.listen(1)
while True:
    sck,addr=ssck.accept()
    function(sck)

Tags: 端口import服务器web语言localhosthost内容
2条回答

tl;dr 你的职能应该是

def function(sck):
    sck.send(bytes("HTTP/1.1 200 OK\n\n<header><title>test page</title></header><body><h1>test page!</h1></body>"),"UTF-8"))
    sck.close()

对于这样简单的服务器,您只需要创建一个TCP套接字。在

HTTP协议建议客户端请求一个页面,例如:

^{pr2}$

回答应该是:

HTTP/1.1 200 OK
some: headers

<header></header><body></body>

相关问题 更多 >

    热门问题