技術雑記帳兼日記帳

AWS、Python、Terraformの使い方をコッソリ

python GETメソッドとレスポンス

はじめに

前回やった人間のためのHTTPの続きで、GETメソッドを使用して、レスポンスを表示してみる。

準備

サーバはFlaskのときに解説したプログラムを使用する。

  • getServer.py
from flask import Flask, request
app = Flask(__name__)

@app.route('/getdata', methods=['GET'])
def index():
    name = request.args.get('name')
    if name:
        return 'Hello, ' + name
        
    return 'Hello, no name'

if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0', port=80)

HTTPリクエストはプログラムも用意する。

  • getClient.py
import requests

payload = {'name':'getClient'}
r = requests.get('http://Your Server Address/getdata', params=payload)

print(r.url)
print(r.text)

実行

サーバプログラムの起動

python getServer.py 

クライアントプログラムの実行結果

$ python3 getClient.py 
http://Your Server Address/getdata?name=getClient
Hello, getClient

print(r.encoding)でtextのエンコーディングもわかる。
r.encodingを変更すると、r.textを指定した値で表示してくれる。


まとめ

ざっとまとめたが、これならGETを使用するようなAPIの呼び出しも簡単に実装できる。