Python socket编程模拟最简单的HTTP响应
2020-08-07 22:43
232 查看
目的:用Python简单实现类似web本地服务器进行模拟HTTP请求的响应,在浏览器访问相应地址+端口号能够得到一个HTML页面
思路:基于socket开发,监听127.0.0.1任一端口,如:8099,接收监听到的数据,并通过conn以HTTP响应的格式返回数据
[code]import socket sock = socket.socket() sock.bind(("localhost", 8800)) # 绑定监听的IP地址与端口8800 sock.listen(5) # 设置最大监听数 while True: conn, addr = sock.accept() data = conn.recv(1024) print(data) # 打印查看请求头与请求体 # 必须以HTTP响应头的格式返回数据,否则浏览器无法正常解析 # 同时注意send的数据不能是str字符串,必须是bytes,否则会报错。 conn.send(b'HTTP/1.1 200 OK\r\n\r\n <h1>Chen Zihao!</h1>') conn.close()
浏览器访问localhost:8800,可以看到得到了send回的response响应体中的html文本,最后交由浏览器解析渲染得到既定的样式。
需要注意的是,http response中响应体前必须有两空行' \r\n\r\n' 否则会被认为是响应头的内容
相关文章推荐
- C++ 网络编程之使用socket + epoll 模拟http 的请求与响应
- python socket编程之客户端和服务端简单交互
- 使用PHP Socket 编程模拟Http post和get请求
- JAVA编写的一个简单的Socket实现的HTTP响应服务器
- 【转】一个简单的python socket编程
- python socket编程之双方相互通信简单实例
- Python 3.xx socket编程 - 简单通讯软件 - Client/Server
- [python网络编程]利用socket编写简单的服务器
- java网络编程——socket简单模拟http服务器
- [python网络编程]利用socket编写简单的服务器
- 浅析HTTP中POST和GET区别并用Python模拟其响应和请求
- Python 一个简单的python socket编程
- JAVA编写的一个简单的Socket实现的HTTP响应服务器
- socket模拟http中post或者get提交数据,并获得响应数据
- 一个简单的python socket编程
- 入门级最简单的python网络编程源码socket,仅供参考
- 【python】socket编程简单的例子
- Python3 socket编程,并与多线程实现最简单的聊天工具之一
- python http、模拟服务器返回相关页面(简单案例)
- python socket编程 实现简单p2p聊天程序