3

ブループリントを構築しようとしている既存の API が 1 つあります。この API では、特定のリクエスト ボディが URI エンコードされた JSON である必要があります。

ボディを「このように、しかしエンコードされた」と指定する方法はありますか?

既存の (単なるテキスト) ドキュメントは、JSON を表示するだけで、送信前にエンコードするための気の利いたリマインダーも表示されます。

POST /blah/blah/blah
Content-Type: application/x-www-form-urlencoded
Parameters: (x-www-form-urlencoded)

        { "title": "Buy cheese and bread for breakfast." }

しかし、ブループリント (特に apiary.io のブループリント) を使用すると、実際のボディを表示する必要があります。これは完全に読めません:

### Create a Note [POST]
+ Request (application/x-www-form-urlencoded)

        %7B%20%22title%22%3A%20%22Buy%20cheese%20and%20bread%20for%20breakfast.%22%20%7D

しかし、ブループリントで読み取り可能なテキストを指定すると失敗します (パラメーター エラーが返されます)。

### Create a Note [POST]
+ Request (application/x-www-form-urlencoded)

        { "title": "Buy cheese and bread for breakfast." }

本当の問題点は、Apiary を実サーバーと通信させたときです。読み取り可能な要求は失敗し (エンコードされていないため)、読み取り不能な要求は成功します (必要に応じてエンコードされているため)。

4

1 に答える 1

0

これはまだサポートされていませんが、ここで追跡されていると思います: https://github.com/apiaryio/api-blueprint/issues/25

于 2013-12-24T19:40:08.853 に答える