我有一个使用Flask构建的简单Web服务器。服务器监听JSON发布的Webhooks。
@app.route('/webhook', methods=['POST'])
def webhook():
if request.method == 'POST':
我需要一种方法来保存传入的JSON数据。我不确定该怎么做。无需将数据放入表中或进行任何配置。
答案 0 :(得分:1)
使用Python的logging
工具。下面是一个示例代码,用于Logging to a file和上面的代码段中。
import logging
from flask import Flask, request
logging.basicConfig(filename='requests.log', level=logging.DEBUG, format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %I:%M:%S %p')
app = Flask(__name__)
@app.route('/webhook', methods=['POST'])
def webhook():
if request.method == 'POST':
request_data = request.get_json()
logging.info(request_data)
if __name__ == '__main__':
logging.info("Running application with local development server!")
app.run()
上面的代码会将带有时间戳的请求记录到文件中,并在每次发出新请求时追加到文件中。
答案 1 :(得分:0)
从烧瓶导入请求jsonify
def webhook():
resp=''
if request.method == 'POST':
my_form_field = request.form['my_form_field']
if my_form_field:
resp = 'Form data received'`enter code here`
return jsonify(resp = resp) #you may collect this response with JQuery
else:
resp = 'Form field is empty'
return jsonify(resp = resp)```