問題タブ [openapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - swagger を使用して JSON 本文を投稿する
次のように、Swagger を使用して JSON 本体を POST したいと思います。
現在、私はこの定義を持っています:
ただし、データは URL で送信されます。Swagger によって生成された curl は次のとおりです。
キーワークが良くないことは理解してquery
いますが、JSON 本文を POST する方法が見つかりませんでした。試してみformData
ましたが、うまくいきませんでした。
swagger - Swagger: パラメーターが異なるにもかかわらず、「同等のパスが既に存在します」
Atom Publishing Protocol (RFC5023) を Swagger / OpenAPI 仕様に変換して、それらの仕様を作成しようとしています。
次の問題に遭遇しました。Atom には、コレクション URI とメンバー URI など、さまざまなタイプの URI があります。私の考えは、次のように文書化することでした:
私がそれを行うと、swagger-editor は次のように主張します。
同等のパスが既に存在します: /{MemberURI}
これらは、照会時に異なるものを返すさまざまなタイプの URI です。それらを個別に文書化するために、それらを別の方法で呼びたいと思います。
これを行う方法はありますか?
ありがとう!
編集:仕様は Swagger-UI で問題なく表示されます-これはエディターのバグですか、それとも UI は私のエラーを無視しますか?
swagger - OpenAPI (Swagger) で API ベースパスをパラメータ化する方法は?
次のような URL があります。
この URL で、/id/{idnumber}
は API ベース パス、/status
はリソースです。
OpenAPI (Swagger) では、次のようにパスでパラメーターを使用できることを知っています。
しかし、これは私が必要としているものではありません。なぜなら、これ/id/{idnumber}
はベース パスであり、リソース パスの一部ではないからです。
ベースパスにパラメータを含める方法はありますか?
swagger - Swagger 仕様で動的応答を受け取る方法
API を介してデータベースからテーブルをリクエストしたいと考えています。ただし、テーブルに含まれる列の数や内容はわかりません。これを Swagger で指定するにはどうすればよいですか? これは私がやりたいことです:
特定のパラメーターなしで JSON オブジェクトを定義する方法についてのアイデアはありますか?
dictionary - Swagger: のマップ
入力と出力の両方として、文字列キーでインデックス付けされたオブジェクトのマップを使用する API を Swagger で文書化する必要があります。
例:
"foo" と "bar" は任意の文字列キーにすることができますが、一連のキーの中で一意である必要があります。
Swagger を使用してオブジェクトの配列を定義できることはわかっていますが、次のようなものがあるため、これは別の API を提供します。
「Open API 仕様」 - 「Map データ型のサポートの追加 #38」ページを読みました。私が理解している限り、additionalProperties を使用することをお勧めしますが、それは私のニーズに応えていないようです(または、私が使用している Swagger UI 2.1.4 では動作しません)。私は何か見落としてますか?
これまでのところ、次の回避策を見つけました(Swagger JSONで):
これでほぼ問題は解決しますが、読者は「キー」が任意の文字列であり、何度も繰り返される可能性があることを理解する必要があります。
必要なものを達成するためのより良い方法はありますか?
json - Swagger/OpenAPI を使用した拡張 JSON メタデータ
Swagger/OpenAPI (または、要求された機能をサポートする別の形式がある場合は同様のもの) を使用して指定された API で使用される JSON オブジェクトの拡張メタデータを宣言する方法を探しています。
アイデアは、このメタデータを使用して、このデータを編集するためのユーザー インターフェイスを自動的に/部分的に生成することです。
要求された機能のリスト:
名前、説明、プレースホルダー、例などのユーザーが判読できる情報の多言語サポート – API 仕様自体の名前と説明は、CRUD エディターなどのエンド ユーザーに表示されるものとは異なる場合があります。
検証メタデータ
Swagger/OpenAPI には最小値、最大値、パターンなどのさまざまなフィールドがあることは知っていますが、検証用に特定の (多言語の) エラー メッセージを指定する方法はありません (「ユーザー名は文字と数字で構成する必要がある」など)。のみ」および複数の言語への翻訳)。または、一致する複数のパターン (それぞれに関連付けられた別のエラー メッセージ)。検証の別の方法は、独自の API 呼び出しである場合があります (電子メールまたはユーザー名が使用可能かどうかのチェックなど)。
リレーション メタデータ たとえば、ID フィールドは実際には別のオブジェクトの ID を (独自のメタデータと共に) 参照します。
swagger - 闊歩; オプションのパラメーターに基づいて同じコードで 2 つの応答を指定する
OPが200または400を返そうとしていたため、この質問は( Swagger - オプションのオブジェクトプロパティまたは複数の応答を指定する)の複製ではありません。
GET
オプションのパラメーターを持つ があります。例: GET /endpoint?selector=foo
。
パラメータが渡されたかどうかに基づいてスキーマが異なる 200 を返したいです。
yaml で、2 つの 200 コードを使用しようとしましたが、ビューアーは 1 つだけを指定したかのようにそれらを押しつぶしてしまいます。
これを行う方法はありますか?
編集: 以下は関連しているようです: https://github.com/OAI/OpenAPI-Specification/issues/270
recursion - OpenAPI/Swaggerで囲み型定義を再帰的に参照するには?
Swagger Editor で OpenAPI 定義を作成しています。
私の型定義の 1 つに、親と同じ型の子要素を含む配列が含まれています。つまり、次のようなものです。
ただし、Swagger Editor はchildren
配列内の再帰参照を取得しません。これは単に「未定義」要素の配列として表示されます。
これを行う方法についてアイデアを持っている人はいますか?