使用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()