通常、リソースを取得するには、次を使用します。
GET http://ws.mydomain.com/resource/123212
しかし、アイテム ID が HTTP URI の場合はどうなるでしょうか?
GET http://ws.mydomain.com/resource/http://id.someotherdomain.com/SGX.3211
ブラウザーは 2 つのスラッシュを 1 つに置き換え、リクエストは次のようになります。
GET http://ws.mydomain.com/resource/http:/id.someotherdomain.com/SGX.3211
これは機能しません。
「 http://id.someotherdomain.com/SGX.3211 」部分をエンコードする URI は、HTTP 400 - Bad request になります。
これを処理するためのベストプラクティスはありますか?
編集:
もちろん、フォームでリクエストする必要がある場合(現時点ではありません):
リソース/ ID /コレクション/ ID
すべての ID は HTTP URI であり、手に負えなくなります...おそらく、次のようなことをして、中括弧内の内容を解析できます。
resources/{http://id...}/collections/{http://id...}