// Package api_doc ... // // Description : api_doc ... // // Author : go_developer@163.com<白茶清欢> // // Date : 2024-07-19 11:45 package api_doc import ( "git.zhangdeman.cn/gateway/api-doc/define" "git.zhangdeman.cn/zhangdeman/serialize" "github.com/tidwall/gjson" "strings" ) // Parse 解析swagger文档 // // Author : go_developer@163.com<白茶清欢> // // Date : 16:54 2024/12/23 func Parse(docUrl string) (*define.DocParseResult, error) { var ( err error docContent []byte ) if docContent, err = serialize.File.ReadFromRemote(docUrl); nil != err { return nil, err } swaggerVersion := gjson.GetBytes(docContent, "swagger").String() if "" == swaggerVersion || !strings.HasPrefix(swaggerVersion, "2.") { // 未指定swagger版本或swagger版本3.x return ParseOpenapi3(docContent) } return ParseSwagger2(docContent) } func ParseOpenapi3(docContent []byte) (*define.DocParseResult, error) { return nil, nil }