Python 在Azure Function App上的Flask中从POST请求传递JSON数据
我正在尝试将JSON请求传递给Flask,并将其部署到Azure function应用程序中。 我跟随线程将我的Python Flask应用程序部署到Azure上。通过在URL中传递参数,我使用GET请求测试了代码,代码正常工作 我的要求是通过传递JSON POST请求来触发代码。但是当我测试它时,我得到一个“500内部服务器错误”,它说“服务器遇到内部错误,无法完成您的请求。要么服务器过载,要么应用程序出错” 我的requirement.txt文件如下所示Python 在Azure Function App上的Flask中从POST请求传递JSON数据,python,flask,azure-function-app,Python,Flask,Azure Function App,我正在尝试将JSON请求传递给Flask,并将其部署到Azure function应用程序中。 我跟随线程将我的Python Flask应用程序部署到Azure上。通过在URL中传递参数,我使用GET请求测试了代码,代码正常工作 我的要求是通过传递JSON POST请求来触发代码。但是当我测试它时,我得到一个“500内部服务器错误”,它说“服务器遇到内部错误,无法完成您的请求。要么服务器过载,要么应用程序出错” 我的requirement.txt文件如下所示 import logging im
import logging
import azure.functions as func
import request
from flask import Flask, request, make_response, jsonify
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
# function for responses (POST Request)
def results():
# build a request object
req = request.get_json(silent=True, force=True)
# fetch action from json
action = req.get('queryResult').get('action')
# return a fulfillment response
return {'fulfillmentText': 'This is a response from webhook.'}
# create a route for webhook
@app.route('/webhook', methods=['GET', 'POST'])
def webhook():
# return response
return make_response(jsonify(results()))
def main(req: func.HttpRequest) -> func.HttpResponse:
logging.info('Python HTTP trigger function processed a request.')
uri=req.params['uri']
with app.test_client() as c:
doAction = {
"GET": c.get(uri).data,
"POST": c.post(uri).data
}
resp = doAction.get(req.method).decode()
return func.HttpResponse(resp, mimetype='text/html')