Python编程实现的简单Web服务器示例


Posted in Python onJune 22, 2017

本文实例讲述了Python编程实现的简单Web服务器。分享给大家供大家参考,具体如下:

最近有个需求,就是要创建一个简到要多简单就有多简单的web服务器,目的就是需要一个后台进程用来接收请求然后处理并返回结果,因此就想到了使用Python来实现。

首先创建一个myapp.py文件,其中定义了一个方法,所有的请求都会经过此方法,可以在此方法里处理传递的url和参数,并返回结果。

def myapp(environ, start_response):
  status = '200 OK'
  headers = [('Content-type', 'text/html')]
  start_response(status, headers)
  if len(environ['PATH_INFO']) == 1:
    return "Hello World!"
  else:
    return "Hello {name}!".format(name=environ['PATH_INFO'][1:])

然后创建一个 server.py文件,其中启动了一个Http服务,并且使用上面创建的app来接收请求并处理

from wsgiref.simple_server import make_server
from myapp import myapp
httpd = make_server('', 8000, myapp)
print "Serving HTTP on port 8000..."
httpd.serve_forever()

最后运行“python server.py”来启动服务。

在浏览器里分别输入下面的url来测试一下结果

http://localhost:8000
http://localhost:8000/kongxx

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
在Python的Django框架中用流响应生成CSV文件的教程
May 02 Python
python 重定向获取真实url的方法
May 11 Python
Tensorflow实现AlexNet卷积神经网络及运算时间评测
May 24 Python
python re模块的高级用法详解
Jun 06 Python
mac PyCharm添加Python解释器及添加package路径的方法
Oct 29 Python
深入解析神经网络从原理到实现
Jul 26 Python
python每5分钟从kafka中提取数据的例子
Dec 23 Python
nginx搭建基于python的web环境的实现步骤
Jan 03 Python
python简单的三元一次方程求解实例
Apr 02 Python
给keras层命名,并提取中间层输出值,保存到文档的实例
May 23 Python
使用keras和tensorflow保存为可部署的pb格式
May 25 Python
教你用Python+selenium搭建自动化测试环境
Jun 18 Python
Python实现复杂对象转JSON的方法示例
Jun 22 #Python
Collatz 序列、逗号代码、字符图网格实例
Jun 22 #Python
基于Python3 逗号代码 和 字符图网格(详谈)
Jun 22 #Python
Tornado协程在python2.7如何返回值(实现方法)
Jun 22 #Python
使用python在本地电脑上快速处理数据
Jun 22 #Python
python2.7 mayavi 安装图文教程(推荐)
Jun 22 #Python
python 字符串转列表 list 出现\ufeff的解决方法
Jun 22 #Python
You might like
PHP答题类应用接口实例
2015/02/09 PHP
PHP微信开发之文本自动回复
2016/06/23 PHP
PHPCMS V9 添加二级导航的思路详解
2016/10/20 PHP
Yii2.0多文件上传实例说明
2017/07/24 PHP
Javascript 通过json自动生成Dom的代码
2010/04/01 Javascript
网页中CDATA标记的说明
2010/09/12 Javascript
用Javascript获取页面元素的具体位置
2013/12/09 Javascript
javascript圆盘抽奖程序实现原理和完整代码例子
2014/06/03 Javascript
Javascript中使用A标签获取当前目录的绝对路径方法
2015/03/02 Javascript
教你如何使用firebug调试功能了解javascript闭包和this
2015/03/04 Javascript
jquery插件validation实现验证身份证号等
2015/06/04 Javascript
js事件处理程序跨浏览器解决方案
2016/03/27 Javascript
在Docker快速部署Node.js应用的详细步骤
2016/09/02 Javascript
jQuery分页插件jquery.pagination.js使用方法解析
2017/02/09 Javascript
jquery实现回车键触发事件(实例讲解)
2017/11/21 jQuery
vue如何引入sass全局变量
2018/06/28 Javascript
浅谈Javascript常用正则表达式应用
2019/03/08 Javascript
React实现阿里云OSS上传文件的示例
2020/08/10 Javascript
学习python之编写简单简单连接数据库并执行查询操作
2016/02/27 Python
Python数据操作方法封装类实例
2017/06/23 Python
Python3.遍历某文件夹提取特定文件名的实例
2018/04/26 Python
Python3 jupyter notebook 服务器搭建过程
2018/11/30 Python
详解Python并发编程之从性能角度来初探并发编程
2019/08/23 Python
Python帮你微信头像任意添加装饰别再@微信官方了
2019/09/25 Python
python-sys.stdout作为默认函数参数的实现
2020/02/21 Python
opencv 阈值分割的具体使用
2020/07/08 Python
python os.rename实例用法详解
2020/12/06 Python
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
白岩松演讲
2014/05/21 职场文书
2014年检验员工作总结
2014/11/19 职场文书
感谢信怎么写
2015/01/21 职场文书
音乐教师个人总结
2015/02/06 职场文书
红高粱观后感
2015/06/10 职场文书
赢在执行观后感
2015/06/16 职场文书
小学班主任工作随笔
2015/08/15 职场文书
2016年“六一儿童节”校园广播稿
2015/12/17 职场文书