yamlを使用してswagger 2.0でAPIデータ型を指定しようとしていますが、参照エラーが発生しています(下部のエラーの詳細を参照)。Swagger APIエラー:参照を解決できませんでした
親オブジェクト(InvoiceConfigData)に子オブジェクトの配列(ProviderVariantsData)が含まれている入れ子構造を使用しています。これはYAMLファイルの階層です:
.API /闊歩/ CFG/InvoiceConfigData.yaml:
required:
- providerName
- providerVariants
properties:
providerName:
type: string
providerVariants:
type: array
items:
$ref: "#/definitions/ProviderVariantsData"
.API /闊歩/ CFG/ProviderVariantsData.yaml:
properties:
displayName:
type: string
cif:
type: string
availableTemplates:
type: array
items:
type: string
.API /swagger/definitions.yaml:
ProviderVariantsData:
$ref: ./cfg/ProviderVariantsData.yaml
InvoiceConfigData:
$ref: ./cfg/InvoiceConfigData.yaml
しかし、私は次のエラーを取得:
API Errors:
#/definitions/InvoiceConfigData/$ref: Reference could not be resolved: ./cfg/InvoiceConfigData.yaml
#/definitions/ProviderVariantsData/$ref: Reference could not be resolved: ./cfg/ProviderVariantsData.yaml
API Warnings:
#/definitions/ProviderVariantsData: Definition is defined but is not used: #/definitions/ProviderVariantsData
私はProviderVariantsDataを参照する方法に問題がありますが、エラーの原因を見つけることができません。私は、 "definitions.yaml"(ProviderVariansDataの上のInvoiceConfigData)で注文を成功させずにフリップしようとしました。
あなたはどのパーサーを使用していますか? – Helen
問題は "items"の字下げです。 "type"と同じレベルにする必要があります。 – rodrunner