首页 > 编程语言 >python静态web服务器如何实现

python静态web服务器如何实现

时间:2023-02-07 14:36:31浏览次数:44  
标签:__ web socket python tcp server 服务器 recv response

1、编写TCP服务器程序。

2、获取浏览器发送的http请求消息数据。

3、读取固定的页面数据,将页面数据组装成HTTP响应消息数据并发送给浏览器。

4、HTTP响应报文数据发送完成后,关闭服务于客户端的套接字。

实例

# 时间: 2021/10/21 20:38
import socket


if __name__ == '__main__':
# 创建tcp服务端套接字
tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 设置端口号复用, 程序退出端口立即释放
tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True)
# 绑定端口号
tcp_server_socket.bind(("", 8080))
# 设置监听
tcp_server_socket.listen(128)
while True:
# 等待接受客户端的连接请求
new_socket, ip_port = tcp_server_socket.accept()
# 代码执行到此,说明连接建立成功
recv_client_data = new_socket.recv(4096)
# 对二进制数据进行解码
recv_client_content = recv_client_data.decode)
print(recv_client_content)


# 响应行
response_line = "HTTP/1.1 200 OK\r\n"
# 响应头
response_header = "Server: py1.0\r\n"

# 响应体
response_body = "Hello,guys!"

# 拼接响应报文
response_data = (response_line + response_header + "\r\n"+ response_body).encode()
# 发送数据
new_socket.send(response_data)

# 关闭服务与客户端的套接字
new_socket.close()

以上就是python静态web服务器的实现,希望对大家有所帮助。

python静态web服务器如何实现_HTTP

标签:__,web,socket,python,tcp,server,服务器,recv,response
From: https://blog.51cto.com/u_14448891/6042080

相关文章

  • 【android 】android 如何使用服务器进行版本更新
    今天,简单讲讲android里如何在app内部直接使用服务器进行版本更新。昨天,我讲了如何使用应用市场进行版本更新。但是使用应用市场进行版本更新存在一个问题,就是app无法获取......
  • python教学之类
    面向对象(pro)C++PYjavarubygo面向过程C直接操作内存对象=包含了很多不同的“元素”的一个物体性质集合体封装性每一个对象封装了不同的对象面向对象的思......
  • arm架构服务器 centos7 更换yum源
    1.清除缓存yumcleanall2.创建备份目录mkdir/etc/yum.repos.d/bak3.备份mv/etc/yum.repos.d/*.repo/etc/yum.repos.d/bak4.在/etc/yum.repos.d/目录下创建一下三个文件......
  • Python中Gevent的使用
    1、可以通过gevent轻松实现并发同步或异步编程。gevent中使用的主要模式是Greenlet,它是以C扩展模块的形式访问Python的轻量级协程。2、Greenlet全部运行在主程序操作系统的......
  • Python使用协程的缺点
    1、多核资源不能使用:协程的本质是单线程,它不能同时使用单个CPU的多核、协程。2、在多CPU上运行程需要与过程配合。当然,每天编写的大多数应用程序都没有必要。除非是cpu密集......
  • Python生成文件md5校验值函数
    linux有个命令叫做md5sum,能生成文件的md5值,一般情况下都会将结果记录到一个文件中用于校验使用,比如会这样使用:[crazyant@localhostPythonMd5]$moresample_filewww......
  • Web DevOps
    s百度词条是这么解释的: “DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟......
  • Python 安装
     ​安装Python环境在你开始学习Python之前最重要的是——对,你要安装Python环境。许多初学者会纠结应该选择2.x版本还是3.x版本的问题,在我看来,世界变化的速度在变......
  • HGAME_2023_WEB_WP_WEEK3
    PingToTheHost很明显的rce,简单测试一下发现空格,cat,;被办,且执行无回显,空格用${IFS},%09,$IFS$9等等来绕过,我们利用dnslog将执行结果外带出来,这里使用的是http://ceye.io/......
  • [Web] 前端的一些快速启动
    VueQuickStartwithVue-CLIimportinhtmlpage:<scripttype="importmap">{"imports":{"vue":"https://unpkg.com/vue@3/dist/vue.esm-browser.js"......