使用Flask搭建代理服务器

使用Flask搭建代理转发restful请求

开发过程中经常需要测试接口,有些接口需要需要认证信息(token). 为了避免在每个请求中重复加入token. 可以简单搭建一个代理服务统一拦截所有请求.

Flask提供了完善的生命周期函数,我们可以在before_request中拦截请求,加上token后转发出去,然后将Response返回.

from flask import Flask, request, jsonify, Response
import requests


def create_app():
    app = Flask(__name__)
    app.config['JSON_AS_ASCII'] = False
    return app


app = create_app()


@app.before_request
def proxy():
    headers = {h[0]: h[1] for h in request.headers}
    url = request.url
    headers['x-token'] = '***'
    # 一些自己的逻辑...
    return requests.request(request.method, url, data=request.json, headers=headers).content

if __name__ == "__main__":
    app.run()
posted @ 2019-07-03 17:07  Aloe_n  阅读(4425)  评论(0编辑  收藏  举报