34章レストフル――ステートレスRESTful

制約

  • 対話性:アクティブエージェント(例えば人)とバックエンド間で対話性を持つ。
  • クライアントとサーバの分離: 両者間の通信はリクエストおよびレスポンス形式で同期的に行われる。
  • ステートレス通信: クライアントからサーバへのあらゆるリクエストには、サーバがリクエストを処理するために必要なすべての情報が含まれる。サーバは進行中の対話コンテキストを保存すべきではなく、セッションの状態はクライアント側で持つ。
  • 統一されたインターフェイス: クライアントとサーバは、一意の識別子を持つリソース(resources)を扱う。リソースは、作成、変更、取得、削除からなる制限的なインターフェイスで操作される。リソースリクエストの結果はアプリケーションの状態も駆動するハイパーメディアで表現される。

プログラム

  1 #!/usr/bin/env python
  2 import re, string, sys
  3
  4 with open("../stop_words.txt") as f:
  5     stops = set(f.read().split(",") + list(string.ascii_lowercase))
  6 # The "database"
  7 data = {}
  8
  9 # サーバ側内部関数
 10 def error_state():
 11 return "Something wrong", ["get", ...

Get プログラミング文体練習 ―Pythonで学ぶ40のプログラミングスタイル now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.