Python实现简单HTTP Server
2015-12-18 16:57
519 查看
Python 实现HTTP Server比较简单。下面的代码是一种方式。
实现HTTP Client,可以考虑使用requests组件,很好用。http://docs.python-requests.org/en/latest/
实现HTTP Client,可以考虑使用requests组件,很好用。http://docs.python-requests.org/en/latest/
#!/usr/bin/python #coding:utf-8 from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler import urllib import json import sys import io import shutil reload(sys) #sys.setdefaultencoding('utf8') #sys.setdefaultencoding('gb18030') sys.setdefaultencoding('gbk') success_message={} success_message['response'] = {"is_success":"true"} success_message_body= json.dumps(success_message, encoding='gbk', ensure_ascii=False).encode('gbk') failure_message={} failure_message["response"]={"is_success":"false","err_code":"400","err_msg":"类型不能为空".encode("gbk")} failure_message_body= json.dumps(failure_message, encoding='gbk', ensure_ascii=False).encode('gbk') class MyRequestHandler(BaseHTTPRequestHandler): def do_process(self,c): content="" #指定返回编码 enc='gbk' #enc='gb18030' content=failure_message_body f=io.BytesIO() f.write(content) f.seek(0) self.send_response(200) self.send_header("Content-type","application/json;charset=%s" % enc) self.send_header("Content-Length",str(len(content))) self.end_headers() shutil.copyfileobj(f,self.wfile) def do_GET(self): print 'GET request received' self.do_process("get") def do_POST(self): print 'POST request received' self.do_process("post") if __name__ == '__main__': PORT = 2000 print "serving at port", PORT print 'Starting server, use <Ctrl-C> to stop' server = HTTPServer(("", PORT), MyRequestHandler) server.serve_forever()
相关文章推荐
- 机器学习(Machine Learning)心得体会(3)逻辑回归&神经网络Exercise 3:One-vs-all & Neural Networks
- Postman—Http请求模拟工具
- 使用tcpcopy拷贝线上流量压测测试环境
- 几种TCP连接中出现RST的情况
- http get post
- android开发框架(一)HTTP通信
- spring websocket 获取httpsession
- TCP接收/发送滑动窗口与内核接收/发送缓冲区之间的关系
- VirtualBox+mininet 网络配置手记2
- 关于Apache/Tomcat/JBOSS/Neginx/lighttpd/Jetty等一些常见服务器的区别比较
- iOS网络编程(六) NSURLSession详解
- Http请求连接池 - HttpClient 的 PoolingHttpClientConnectionManager
- iOS判断网络状况
- HTTP响应头和请求头信息对照表
- ftp和http断点续传及下载的Delphi实现
- 性能之巅:Linux网络性能分析工具
- TCP/IP、Http、Socket的区别
- Windows网络编程之Select模型学习笔记
- iOS上模拟网络环境
- web.config中httpRunTime的属性 .