`

BaseHTTPServer

 
阅读更多

BaseHTTPServer 

 

BaseHTTPServer 提供了 HTTPServer ,BaseHTTPRequestHandler两个类用与实现简单的http服务器,

一般不是直接使用BaseHTTPServer 模块,而是使用SimpleHTTPServer, CGIHTTPServer.

 

#!/usr/bin/env python

#!coding=utf-8

 

from BaseHTTPServer import HTTPServer ,BaseHTTPRequestHandler

from SocketServer import ThreadingMixIn

 

 

 

class RequestHandler(BaseHTTPRequestHandler):

    def _writehander(self):

        self.send_response(200)

        self.send_header('Content-type','text/html')

        self.end_headers()

 

    def do_GET(self):

        """

        处理get请求

        """

        self._writehander()

        self.wfile.write("<html>")

        self.wfile.write("%s<br>"%(self.path))

        self.wfile.write("%s<br>"%(self.server))

        self.wfile.write("%s<br>"%(self.responses))

        self.wfile.write("</html>")

 

 

    def do_POST(self):

        """

        处理post请求

        """

        self._writehander()

        self.wfile.write("<html>")

        self.wfile.write("%s<br>"%(self.path))

        self.wfile.write("%s<br>"%(self.server))

        self.wfile.write("%s<br>"%(self.responses))

        self.wfile.write("</html>")

 

serveraddr = ('',9001)

 

"""

只能单线程的处理,会阻塞

ser = HTTPServer(serveraddr,RequestHandler)

ser.serve_forever()

"""

 

 

 

#多线程处理

class ThreadingHTTPServer(ThreadingMixIn,HTTPServer):

    pass

ser = ThreadingHTTPServer(serveraddr,RequestHandler)

ser.serve_forever()

 

分享到:
评论

相关推荐

    python探索之BaseHTTPServer-实现Web服务器介绍

    在Python探索之SocketServer详解中我们介绍了Python标准库中的SocketServer模块,了解了要实现网络通信服务,就要构建一个服务器类和请求处理类。同时,该模块还为我们创建了不同的服务器类和请求处理类。...

    Python实现基于HTTP文件传输实例

    分享给大家供大家参考。具体实现方法如下: 一、问题: ...from BaseHTTPServer import BaseHTTPRequestHandler import cgi class PostHandler(BaseHTTPRequestHandler):  def do_POST(self):  

    基于Python+HTML+MySQL的图书借阅管理系统.zip

    服务器库:BaseHTTPServer 连接MySQL库:MySQLdb 控制台设置库:Sys URL解析库:Urllib 时间库:Time 时间库:Datetime 操作系统库:os 5.3编码方式 前端网页:GBK 服务器端:GBK 数据库:UTF-8...

    艾伯特《Python标准库》中文版

    1. 核心模块 o 1.1. 介绍 o 1.2. _ _builtin_ _ 模块 o 1.3....o 1.4.... BaseHTTPServer 模块 o 7.20. SimpleHTTPServer 模块 o 7.21. CGIHTTPServer 模块 o 7.22. cgi 模块 o 7.23. webbrowser 模块

    python模块详解

    7.19. BaseHTTPServer 模块 7.20. SimpleHTTPServer 模块 7.21. CGIHTTPServer 模块 7.22. cgi 模块 7.23. webbrowser 模块 国际化 8.1. locale 模块 8.2. unicodedata 模块 8.3. ucnhash 模块 多媒体相关...

    Python探索之实现一个简单的HTTP服务器

    这在文章python探索之BaseHTTPServer-实现Web服务器介绍中进行了相关的介绍。然而,BaseHTTPServer模块中并没有定义相关的请求方法,诸如GET、HEAD、POST等。在BaseHTTPServer模块的基础上,Python标准库中的...

    Python3搭建http服务器的实现代码

    Python2提供了BaseHTTPServer模块,不过在Py3把它合并到了http.server中。 老教材用BaseHTTPServer你可以直接用http.server代替即可。 这里利用http.server搭建最简单的web服务器: from ...

    flying-squirrel-python:飞鼠的 Python 客户端库

    飞鼠 Python 客户端 Flying Squirrel Web Hooks 客户端 首先,您需要导入 ... 例如,使用“BaseHTTPServer”类,您可以编写如下内容: class WebHooksCallback(BaseHTTPServer.BaseHTTPRequestHandler): d

    httpserver

    python简单的http服务器,支持文件上传。使用BaseHTTPServer库实现

    SimpleTornadoServer:`python -m SimpleTornadoServer` 类似于 SimpleHTTPServer

    $ python -m SimpleTornadoServerServing HTTP on 0.0.0.0 port 8000 ...默认端口为8000 ,或 $ python -m SimpleTornadoServer [PORT]此外,您可以使用SocketServer.ThreadingMixin和BaseHttpServer.HTTPServer来...

    autoserve:一个基于Python的微型Web服务器

    autoserve使用Python的BaseHTTPServer类来允许用户从浏览器访问磁盘上的位置,而无需安装任何东西或对封闭源(可能不安全)的产品信任。 跑步 克隆Git存储库 将autoserve_dist_v0.1.zip文件复制/移动到目标位置 解...

    使用Python创建简单的HTTP服务器的方法步骤

    基本命令 python -m Web服务器模块 [端口号,默认8000]...BaseHTTPServer: 提供基本的Web服务和处理器类,分别是HTTPServer和BaseHTTPRequestHandler。 SimpleHTTPServer: 包含执行GET和HEAD请求的SimpleHTTPRequestH

    Python3之简单搭建自带服务器的实例讲解

    在Python2.6版本里,/usr/bin/lib/python2.6/ 目录下会有 BaseHTTPServer.py, SimpleHTTPServer.py, CGIHTTPServer.py两个文件, 但是在Python3.4里,就没有上面的3个文件,而是合闭到了 /usr/bin/python3.4/...

    crosshair:使用Python编写的具有Picamera的Raspberry Pi的可自定义十字线叠加层生成器,用Python编写(已停产)

    十字准线可定制的十字线叠加层生成器,用于使用Picamera的Raspberry Pi,用Python编写使用Python 2.7及以下版本: 枕头麻木OpenCVRPi的GPIO 皮卡梅拉配置解析器BaseHTTPServer和CGIHTTPServer的一些东西paramiko...

    Python HTTP服务搭建显示本地文件

    例如之前讲过的用python建XMLRPC开服务进行server/client通信,但这里还有个问题,如果我需要显示本地文件(比如图片),但是rpc不可以直接访问本地文件怎么办?...import BaseHTTPServer from SimpleHT

    basic-auth-pot:bap - http 基本身份验证 HoneyPot

    HEAD 或 GET 以外的 HTTP 请求方法将导致 BaseHTTPServer 生成错误响应。 该服务没有有效的用户名/密码。 凭证仅被解码和记录。 配置 在 bap.py 中配置 HTTP_ADDR 和 HTTP_PORT。 将 HTTP_ADDR 保留为空字符串将...

    notebook:我的技术笔记本〜

    http.server(BaseHTTPServer)并发性改善不必修改库文件 中文输出乱码问题解决 pycodestyle检查代码风格 生成随机字符串 别对大的list循环使用in,应该改用set Python.h:没有这样的文件或目录 二进制字符串转普通...

    python创建一个最简单http webserver服务器的方法

    import BaseHTTPServer from SimpleHTTPServer import SimpleHTTPRequestHandler Handler = SimpleHTTPRequestHandler Server = BaseHTTPServer.HTTPServer Protocol = "HTTP/1.0" if sys.argv[1:]: port = int(sys...

    Python基于ThreadingTCPServer创建多线程代理的方法示例

    from BaseHTTPServer import BaseHTTPRequestHandler from SocketServer import ThreadingTCPServer import gzip from StringIO import StringIO import logging logging.basicConfig(level=logging.DEBUG, format=...

Global site tag (gtag.js) - Google Analytics