FlaskでPythonを使用してPOST/GETリクエスト変数の値を取得する方法を知りたいのですが。
Rubyでは、次のようなことをします。
variable_name = params["FormFieldValue"]
Flaskでこれを行うにはどうすればよいですか?
投稿されたフォームデータはrequest.form
から取得でき、クエリ文字列データはrequest.args
から取得できます。
myvar = request.form["myvar"]
myvar = request.args["myvar"]
POSTデータを取得する場合、
first_name = request.form.get("firstname")
GET(クエリ文字列)データを取得する場合、
first_name = request.args.get("firstname")
または、値がクエリ文字列にあるのか投稿データにあるのか気にしない/知らない場合は、
first_name = request.values.get("firstname").
request.valuesは、request.formとrequest.argsからのDictを結合するCombinedMultiDictです。
POSTデータまたはGETデータを取得するJasonのより一般化された方法にさらに追加する
from flask_restful import reqparse
def parse_arg_from_requests(arg, **kwargs):
parse = reqparse.RequestParser()
parse.add_argument(arg, **kwargs)
args = parse.parse_args()
return args[arg]
form_field_value = parse_arg_from_requests('FormFieldValue')