美文网首页
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