0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

API作成の run_server.py 苦戦....

Last updated at Posted at 2019-12-26

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形式で送るのか?
image.png

GET形式はURLの後ろに入力データがくっつく形式!
つまり、入力データを送信した次のページのリンクに入力データが見える形に載ってる!
(個人情報とか載るって怖い)*どうでもいい情報なら問題なし
image.png

POST形式はURLの後ろに入力データがくっつかない形式!
個人情報も隠れるのでok!

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?