增加全局安全类参数解析
This commit is contained in:
29
swagger.go
29
swagger.go
@ -31,17 +31,38 @@ func ParseSwagger2(docContent []byte) (*define.DocParseResult, error) {
|
||||
return nil, errors.New("parse swagger json fail : " + err.Error())
|
||||
}
|
||||
docResult := &define.DocParseResult{
|
||||
Domain: swaggerDoc.Host,
|
||||
Title: swaggerDoc.Info.Title,
|
||||
Description: swaggerDoc.Info.Description,
|
||||
UriList: make([]*define.UriBaseConfig, 0),
|
||||
Domain: swaggerDoc.Host,
|
||||
Title: swaggerDoc.Info.Title,
|
||||
Description: swaggerDoc.Info.Description,
|
||||
UriList: make([]*define.UriBaseConfig, 0),
|
||||
GlobalSecurityParamList: make([]*define.ParamConfig, 0),
|
||||
}
|
||||
if docResult.UriList, err = buildUriList(&swaggerDoc); nil != err {
|
||||
return nil, err
|
||||
}
|
||||
docResult.GlobalSecurityParamList = buildSwagger2GlobalSecurityParamList(&swaggerDoc)
|
||||
return docResult, nil
|
||||
}
|
||||
|
||||
// buildSwagger2GlobalSecurityParamList 构建全局安全类参数
|
||||
func buildSwagger2GlobalSecurityParamList(swaggerDoc *define.Swagger) []*define.ParamConfig {
|
||||
result := make([]*define.ParamConfig, 0)
|
||||
for paramName, paramConfig := range swaggerDoc.SecurityDefinitions {
|
||||
if len(paramConfig.In) == 0 {
|
||||
continue
|
||||
}
|
||||
result = append(result, &define.ParamConfig{
|
||||
Location: GetParamLocation(paramConfig.In).String(),
|
||||
Path: paramName,
|
||||
Type: GetDataType(paramConfig.Type, "").String(),
|
||||
Title: paramName,
|
||||
Description: paramConfig.Description,
|
||||
Required: false,
|
||||
})
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
// 解析uri列表
|
||||
func buildUriList(swaggerDoc *define.Swagger) ([]*define.UriBaseConfig, error) {
|
||||
uriList := make([]*define.UriBaseConfig, 0)
|
||||
|
Reference in New Issue
Block a user