postするjsonのデータは{"name":"monkeydaichan"}です.
戻り値は{"data":{"id":1,"name":"monkeydaichan"}}こうしてます.
# coding:utf-8
import json
from flask import Flask, jsonify, make_response, request, Response
app = Flask(__name__)
@app.route('/post', methods=['POST'])# POST形式で送られたデータのみ受け取る
def post_json():
json = request.get_json() #HTTPリクエストのMIMEタイプがapplication/json場合、 request.get_json()を呼び出すと解析されたJSONデータが返されます
NAME = json['name'] #辞書型変数jsonのキー”name”の”value”の値を変数NAMEに投げる
result = {
"data": {
"id": 1,
"name": NAME
}
}
return jsonify(result)
if __name__ == "__main__":
app.run()
#①@app.route()とは?
from flask import Flask
app = Flask(__name__)
@app.route('/') # http://xxx 以降のURLパスを '/' と指定
def index():
return 'Index Page'
上記の例では、 http://xxx/ と index() を紐付けています。http://xxx/ にアクセスすると、「Index Page」とだけ書かれた質素なページが表示されます。
つまり、"/aaa"と書けば、http://xxx/aaaというリンクを探すと、以下の処理を行うということ!
#②HTTPメソッドに応じたルーティング
@app.route('/edit', methods=['GET', 'POST'])
def edit():
# 共通の処理
if request.method == 'get':
# GET時の処理
else:
# POST時の処理
# 共通の処理
#POSTとGET
Webサーバーに情報を渡すための「手段」!
POST形式で送るのか? GET形式で送るのか?
GET形式はURLの後ろに入力データがくっつく形式!
つまり、入力データを送信した次のページのリンクに入力データが見える形に載ってる!
(個人情報とか載るって怖い)*どうでもいい情報なら問題なし
POST形式はURLの後ろに入力データがくっつかない形式!
個人情報も隠れるのでok!