美文网首页
python开启http服务

python开启http服务

作者: 水煮鱼又失败了 | 来源:发表于2020-07-07 21:10 被阅读0次

    1 场景

    python可以完成很多独立的功能,有时候需要提供接口,供外部其他程序调用。

    这里举例说明python提供http协议端口,供外部程序访问

    2 代码

    from http.server import HTTPServer, BaseHTTPRequestHandler
    import urllib
    import json
    
    '''========【http端口服务】========'''
    class HttpHandler(BaseHTTPRequestHandler):
        def do_GET(self):
            path,args=urllib.parse.splitquery(self.path)
            self._response(path, args)
        def do_POST(self):
            args = self.rfile.read(int(self.headers['content-length'])).decode("utf-8")
            self._response(self.path, args)
        def _response(self, path, args):
            # 组装参数为字典
            if args:
                args=urllib.parse.parse_qs(args).items()
                args=dict([(k,v[0]) for k,v in args])
            else:
                args={}
            # 返回结果
            result={"success":True}
            self.send_response(200)
            self.send_header('Content-type', 'application/json')
            self.end_headers()
            self.wfile.write(json.dumps(result).encode())
    
    '''========【执行入口】========'''
    if __name__ == '__main__':
        #开启http服务,设置监听ip和端口
        httpd = HTTPServer(('192.168.1.105', 9999), HttpHandler)
        httpd.serve_forever()
    

    相关文章

      网友评论

          本文标题:python开启http服务

          本文链接:https://www.haomeiwen.com/subject/afzzqktx.html