python高级05——HTTP协议和静态服务器

1、HTTP协议

1-1、网址

1-2、HTTP协议的介绍

1-3、HTTP请求报文

GET方法

POST方法

1-4、HTTP响应报文

1-5、查看HTTP协议的通讯过程

谷歌浏览器开发者工具

2、静态web服务器搭建

2-1、搭建python自带的静态web服务器

2-2、静态web服务器-返回固定页面数据

python 复制代码
import socket

if __name__ == '__main__':
    #1、编写一个TCP服务端程序
    #创建socket
    tcp_server_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM) #ipv4, TCP
    tcp_server_socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,True) #端口复用
    #绑定地址
    tcp_server_socket.bind(("",8080))
    #设置监听
    tcp_server_socket.listen(128)
    while True:
        # 2、获取浏览器的请求报文数据
        # 建立连接
        client_socket, client_addr = tcp_server_socket.accept()
        # 获取浏览器请求信息
        client_socket_data = client_socket.recv(1024).decode()
        print(client_socket_data)
        #3、获取页面固定数据,把数据组装成html响应报文发给浏览器
        with open("./test110.14.html","rb") as f:
            file_data=f.read()
        #应答行
        response_line="HTTP/1.1 200 OK\r\n"
        #应答头
        response_head="Server:pwb\r\n"
        #应答体
        response_body=file_data
        response_data=(response_line+response_head+"\r\n").encode()+response_body
        client_socket.send(response_data)
        #4、HTTP响应报文发送完,关闭服务于客户端的套接字
        client_socket.close()

在浏览器输入127.0.0.1:8080即可访问服务器。

2-3、静态web服务器-返回指定页面数据

相关推荐
xbzb7 小时前
容器 IP 每次重建都变?docker network 五种模式与自定义网桥固定地址
网络·docker·容器·ip·network·固定
火云代理8 小时前
同一个网站,有的网络能打开、有的打不开?认识 IPv4 与 IPv6 的访问差异
服务器·网络·网络协议·tcp/ip·测试工具·php·状态模式
坤坤子吖8 小时前
Linux网络编程:TCP 粘包与半包问题,如何正确处理 TCP 流式数据?
linux·服务器·网络·笔记·网络协议·学习
火云代理11 小时前
Python 使用代理 IP 前,先弄清 Requests 的配置来源与验证方法
网络·python·网络协议·tcp/ip·ip
如夏倾城12 小时前
QUIC——HTTP/3 的唯一底层传输协议 及 0-RTT恢复
网络·网络协议·tcp/ip·安全·http
科研邪修法13 小时前
培训PDF保护配置:把需求转换成可验收权限
linux·服务器·网络
略懂而已1 天前
安装SSL后网站速度变慢?
网络·网络协议·ssl
云上工程笔记1 天前
RDMA / IB 高速互联 GPU 云对比:多机训练网络性能与价格
网络·gpu算力·gpu
codigger2 天前
负载均衡到底在干嘛?7 个场景给你说明白
网络·架构·负载均衡