SimpleHTTPServer
SimpleHTTPServer是Python自带的一个HTTP服务类,通过使用它,我们能够在任意平台(Window,Linux,MacOS)快速搭建一个HTTP服务和共享服务,只需要安装Python环境即可
如何使用
如果你想开启一个运行在特定端口上的文件共享服务,可以执行如下命令
1
|
python - m SimpleHTTPServer [port] |
这将会把当前目录下的文件和目录显示出来,如果我们不指定端口,默认为8000
当然上述命令也开启了一个HTTP服务,假设当前运行目录下由一个文件test,那么我们可以这样请求
1
|
curl "http://localhost:8000/test" - v |
请求结果为test里面的内容
用途
软件开发过程都是多人协作的,当我们在开发项目依赖于其他人的HTTP接口的时候,我们可以使用SimpleHTTPServer来对依赖的接口进行mock,这样能够加快联调的速度,及早的调试出程序的问题。一般我们的文件中使用json串来模拟结果
不足
python系统自带的SimpleHTTPServer只支持GET和HEAD方法,不支持POST方法(测试环境为python 2.7.10),需要进行简单的修改
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#部分源码 def do_GET( self ): """Serve a GET request.""" f = self .send_head() if f: try : self .copyfile(f, self .wfile) finally : f.close() def do_HEAD( self ): """Serve a HEAD request.""" f = self .send_head() if f: f.close() |
我们可以将SimpeHTTPServer方法复制一份,然后在里面实现do_POST方法即可
1
2
3
|
def do_POST( self ): """Serve a POST request.""" self .do_GET() |
将文件保存后运行,即可支持POST方式请求
以上这篇使用Python快速搭建HTTP服务和文件共享服务的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/danchu/article/details/75028351