feat: 修复ref引用key不一致的BUG

This commit is contained in:
2026-01-07 23:21:22 +08:00
parent cc15acf0fc
commit a877079712

View File

@@ -251,10 +251,10 @@ func (g *Generate) AddApiDoc(docFlag string, apiMeta define.UriConfig, request a
schemaData := GenerateOpenAPISchema(requestType)
apiOperate, isRead := g.initApiConfig(docFlag, apiMeta)
requestTypeStr := strings.Trim(requestType.String(), "*")
if isRead {
if g.enableRedundantStorageComponents {
// 此处是冗余 components 设置, 便于查看结构体, 不冗余文档也可正常解析
requestTypeStr := requestType.String()
if _, exist := g.docTable[docFlag].Components.Schemas[requestTypeStr]; !exist {
g.docTable[docFlag].Components.Schemas[requestTypeStr] = schemaData
}
@@ -262,14 +262,13 @@ func (g *Generate) AddApiDoc(docFlag string, apiMeta define.UriConfig, request a
}
g.setReadRequestParameter(apiOperate, schemaData)
} else {
requestTypeStr := requestType.String()
if _, exist := g.docTable[docFlag].Components.Schemas[requestTypeStr]; !exist {
g.docTable[docFlag].Components.Schemas[requestTypeStr] = schemaData
}
g.setWriteRequestBody(apiOperate, g.getComponentsSchemaRef(requestType.String()))
}
responseTypeStr := responseType.String()
responseTypeStr := strings.Trim(responseType.String(), "*")
if _, exist := g.docTable[docFlag].Components.Schemas[responseTypeStr]; !exist {
g.docTable[docFlag].Components.Schemas[responseTypeStr] = GenerateOpenAPISchema(responseType)
}