GETとPOSTリクエストを行う

GET、POSTリクエストを行う

実践

bottleでGETとPOSTリクエストをしてみます。

サンプルコード

from bottle import run, get, post, request

# 右の通りに書いてもGETになる @route('/input')
@get('/input') 
def input():
    return '''<form method="POST" action="/result">
                鉛筆:<input name="pencil" type="text" />個
                消しゴム:<input name="eraser" type="text" />個
                <input type="submit" />
              </form>'''
              
# 右の通りに書いてもPOSTになる @route('/result', method='POST')
@post('/result')
def result():
    pencil = request.forms.get('pencil')
    eraser = request.forms.get('eraser')
    return '鉛筆は' + pencil + '個、消しゴムは' + eraser + "個の購入しました。"

run(host='localhost', port=8080, debug=True)

http://localhost:8080/inputへアクセスすると入力画面が表示されます。

値を入力して送信すると、POSTでデータが与えられ、その結果が表示されます。

解説

今までは、@routeでURLを決めていましたが、@get()、@post()でGETリクエスト、POSTリクエストに対して処理を行うようにすることができます。

ほかに@put()、@delete()があり、put、deleteリクエストもできます。

コメント