flask return戻り値のタイプ要件

1207 ワード

flaskがデータを返すいくつかの方法:文字列、json、メタグループ
一、普通文字列を返す
flaskビュー関数のreturnは変換せずに返すことができます:文字列
@app.route('/')
def index():
    return 'Hello World!'

実は上の戻りはデフォルトでResponseを使って変換されたもので、下のコードと同じです.
from flask import Flask, Response

@app.route('/')
def index():
    return Response('Hello World')

二、jsonデータを返す
リストや辞書などのデータを返すには、まずjsonデータに変換して返す必要があります.
from flask import Flask, jsonify

@app.route("/")
def index():
    dict_data = {
    	"name": "xiaoming",
    	"age": 28
    	}
    return jsonify(dict_data)

三、元祖に戻る
元を返すには要求があり、元の内容には3つのパラメータ、response(応答体)、status_が含まれています.code(ステータスコード、カスタマイズ可能)、headers(鳴動ヘッド)
from flask import Flask
import json

@app.route("/user")
def user():
    json_dict = {
    	"name": "xiaoming",
		"user_info":{"age": 28}
		}
    data = json.dumps(json_dict)
    return data, 666, {"ContentType":"application/json"}

注意:jsonify()辞書オブジェクトをjson文字列に変換します.Content-Type:アプリケーション/json;json.dumps()辞書オブジェクトをjson文字列に変換し、Content-Type:text/html