requestsパッケージでJSONを送信する
APIレスポンスからJSONテキストを受信できるのと同様に、POSTリクエストやPUTリクエストを使ってAPIにJSONテキストを送信することもできます。request.post() と request.put() で json 引数を使うと、requests パッケージが必要なヘッダーの追加やエンコードをすべて自動で処理してくれます。とても便利ですね。
早速試してみましょう。実は、/playlists APIへのPOSTリクエストを使うと、複数のプレイリストを一度に作成できます。それぞれに Name プロパティを持つプレイリストのリストをAPIに渡すだけで、すべてを一度に作成できます。
この演習はコースの一部です
Pythonを使ったAPI入門
演習の手順
playlists変数をrequests.post()関数に引数として渡し、自動的にJSONとして送信されるようにしましょう。- APIからすべてのプレイリストの一覧を取得しましょう。
- JSONテキストを出力して、GETリクエストのレスポンスを確認しましょう。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
playlists = [{"Name":"Rock ballads"}, {"Name":"My favorite songs"}, {"Name":"Road Trip"}]
# POST the playlists array to the API using the json argument
requests.post('http://localhost:3000/playlists/', ____=____)
# Get the list of all created playlists
response = requests.____('http://localhost:3000/playlists')
# Print the response text to inspect the JSON text
print(response.____)