2017-03-03 5 views
0

私はAPIドキュメントにSwaggerを使用しています。いくつかのAPIは、動的なポストオブジェクトを使用するので、私はちょうど使用:闊歩のUIでスワッガーが動的オブジェクトを要求します

parameters: 
- name: region 
    in: body 
    schema: 
    type: object 

を、それはまだ、私は「編集JSON」ボタンを使用してコンテンツを編集することができますが、私は「保存」をクリックした後、要求する何も追記「リクエスト送信」ボタンをクリックすると、空のリクエストを送信します。だから私は何が間違っていますか?

これをhttp://editor.swagger.io/でテストし、postパラメータを "object"タイプに変更しても、まだjsonデータを編集できません。

+0

Swagger UIで問題を再現できなかった場合でも、私はあなたの質問への回答を掲載しました。私の経験上、Swagger UIでは、** additionalProperties **を使わなくても動的なプロパティを送ることができます。 Swagger Codegenについても同じことは言えません。 ** additionalProperties **を使用すると、クライアントコードを生成するときにはるかに良い結果が得られます。 Swagger UIにまだ問題がある場合は、質問を明確にしてください。 –

+0

** zhonshu **、質問を明確にしていただきありがとうございます。あなたの元の投稿はSwagger Editorについて言及していませんでした。私はあなたがSwagger UIに全く問題のないインターフェースを持っていると思っていました。私はSwagger Editorからリクエストを送信しようとしたことはありません。 Swagger UIを試しましたか?それはあなたに問題の別の視点を与えるかもしれません。 (https://github.com/swagger-api/swagger-ui) –

答えて

0

additionalPropertiesを使用して、動的プロパティを持つオブジェクトを定義することができます。たとえば、次のようになります。

parameters: 
- name: region 
    in: body 
    schema: 
    type: object 
    additionalProperties: 
     type: object 

リクエストボディは固定プロパティのないJSONオブジェクトです。クライアントは、実行時に任意のタイプ(文字列、ブール値、オブジェクトなど)のプロパティを指定できます。 additionalPropertiesの詳細については、OpenAPI仕様v2.0を参照してください。

+0

私はあなたの提案を試みましたが、私のjsonを依頼して依頼することはできません。 – zhongshu

関連する問題