导语:
本文主要介绍了关于python静态web服务器如何实现的相关知识,包括python类方法和静态方法,以及python做WEB服务器怎么样这些编程知识,希望对大家有参考作用。
1、编写TCP服务器程序。
2、获取浏览器发送的http请求消息数据。
3、读取固定的页面数据,将页面数据组装成HTTP响应消息数据发送给浏览器。
4、HTTP响应消息数据发送完毕后,关闭为客户端服务的socket。
实例
# 时间: 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中使用拉普拉斯算子12/29
- ♥ 在python中排序时不区分大小写11/24
- ♥ 通俗易懂的Python输入输出、格式化字符串方法10/17
- ♥ 如何防止python反编译09/26
- ♥ linux中Python环境变量的设置12/16
- ♥ 在哪里写python代码08/26
内容反馈