次のAPIサポートが必要です:
GET /api/spam/{id}
POST /api/spam
body: {'name': 'green spam'}
私は通常、次の方法でハンドラーにルーティングします。
webapp.WSGIApplication([r'/api/spam/(.*)', APISpam])
class APISpam(RequestHandler):
def get(self, id):
# do stuff
def post(self):
# do stuff
しかし、2番目の引数を期待しているため、投稿は失敗します。各タイプのリソースのハンドラーへのRESTfulURLパターンに対応するための最適なデザインパターンは何ですか?
アップデート:
上記のURIの例は、コレクション(/ spam)と要素(/ spam / {id})を表していることが指摘されています。それは私の意図ではありません。両方のURIの例は、要素スパム用であり、1つは特定のスパムを取得するためのものであり、もう1つは新しいスパムをPOSTするためのものです。POSTに/spam/ {id}を使用していない理由は、新しいスパムを作成しているため、IDがないためです。