python - Python网络服务器说“连接重置”
问题描述
今天早些时候,我使用套接字库制作了一个非常基本的 python 网络服务器。它应该能够返回基本的html页面,就是这样。在我通过浏览器向它发送请求之前,服务器似乎工作正常。由于我对服务器进行了编程,使其在开始侦听端口或接受连接时向终端发送进度消息,因此我可以判断它已建立连接,但每次尝试加载浏览器时都会显示“连接重置”消息. 查看日志,我发现每次加载页面时我的连接成功消息都会显示两次,这很奇怪。这就是浏览器一直显示“连接重置”的原因吗?我对socket和HTTP不太熟悉,请多多包涵。
这是服务器:
import socket
host = ''
port = 8080
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
sock.bind((host,port))
sock.listen(1)
print("Listening for connections on port" + ' ' + str(port))
while 1:
sock_sock, sock_addr = sock.accept()
print("Accepted connection on port" + ' ' + str(port))
sock_file = sock_sock.send(open("main_app.py").read(), 0)
print("Closing socket...")
sock_file.close()
sock_sock.close()
解决方案
推荐阅读
- php - 服务器和客户端上的 Javascript/CSS 加密
- redux-saga - 在 Redux Saga 中按顺序调用动作(同步)
- java - 多线程中的对象锁定
- python - 如何使用 RSAPublicKey 字段腌制 namedtuple 子类
- json - 在 Angular 中使用嵌套的 JSON 数据
- android-studio - Android Studio 3.5 Canary 7:“应用代码更改”已禁用
- c++ - 当调度策略为 SCHED_RR 时,pthread 临界区中的经过时间峰值可能是什么原因?
- node.js - 带有嵌套描述的订单
- reactjs - 将路由器链接放在滑动侧边栏中
- vb.net - 将当前日期与时间格式化为日期,而不是字符串