0

ApiaryIO 仕様 (実際にはそれが指す RFC) は、「.」を使用できないことを示しています。パラメータ名では、「%2E」にエンコードする必要があります。それは問題ありませんが、Apiary がそのようなエンコーディングを 1 つしか処理できないというバグがあるようです。たとえば、次の

## Notes Collection [/notes{?foo%2Ebar}]

次のコード例が得られます

request = Request('http://private-d1ee7-testingnewapiary.apiary-mock.com/notes?foo.bar=foo.bar')

どちらが正しい。ただし、以下の

## Notes Collection [/notes{?foo%2Ebar,baz%2Ebla}]

次のコード例が生成されます。

request = Request('http://private-d1ee7-testingnewapiary.apiary-mock.com/notes?foo%252Ebar=foo%252Ebar&baz%252Ebla=baz%252Ebla')

最初のコード例では "foo.bar" が含まれていますが、2 番目の例では "foo%252Ebar" が含まれていますが、これは正しくありません。

ここでのダウンストリーム効果は、API サーバーに間違った URI が送信されるため、応答が不正な形式になり、エラーが発生することです。

URI テンプレートで多くの "." を含むパラメーターをエンコードし、適切なコード例を取得するにはどうすればよいですか?

4

1 に答える 1