Last active
September 20, 2023 03:26
-
-
Save lemos1235/41d02796f18ae88f8e4f80627cc74e94 to your computer and use it in GitHub Desktop.
apifox-helper
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# swagger3 | |
#Hidden | |
ignore=@io.swagger.v3.oas.annotations.Hidden | |
field.ignore=@io.swagger.v3.oas.annotations.Hidden | |
param.ignore=@io.swagger.v3.oas.annotations.Hidden | |
#Operation | |
method.doc=@io.swagger.v3.oas.annotations.Operation#summary | |
method.default.http.method=@io.swagger.v3.oas.annotations.Operation#method | |
api.tag=@io.swagger.v3.oas.annotations.Operation#tags | |
api.tag[@io.swagger.v3.oas.annotations.Operation#deprecated]=deprecated | |
#Tag(s) | |
api.tag=@io.swagger.v3.oas.annotations.tags.Tag#name | |
api.tag[@io.swagger.v3.oas.annotations.tags.Tags]=groovy:``` | |
@it.annValue("io.swagger.v3.oas.annotations.tags.Tags").collect{it.name} | |
``` | |
#Model | |
field.doc=@io.swagger.v3.oas.annotations.media.Schema#description | |
field.required=@io.swagger.v3.oas.annotations.media.Schema#required | |
field.ignore=@io.swagger.v3.oas.annotations.media.Schema#hidden | |
#Parameter | |
param.ignore=@io.swagger.v3.oas.annotations.Parameter#hidden | |
param.required=@io.swagger.v3.oas.annotations.Parameter#required | |
param.doc[@io.swagger.v3.oas.annotations.Parameter#deprecated]=「已废弃」 | |
param.doc=@io.swagger.v3.oas.annotations.Parameter#description | |
# resolve the parameters from Parameter | |
resolve_parameter=``` | |
def desc = map.description | |
def paramType = map.in?.value ?: "query" | |
def required = map.required?:true | |
if(paramType==""||paramType=="query"){ | |
api.setParam(map.name,null,required,desc) | |
}else if(paramType=="path"){ | |
api.setPathParam(map.name,null,desc) | |
}else if(paramType=="header"){ | |
api.setHeader(map.name,null,required,desc) | |
} | |
``` | |
# extract parameter from Parameter | |
export.after[@io.swagger.annotations.Parameter]=groovy:``` | |
def map = it.annMap("io.swagger.annotations.Parameter") | |
${resolve_parameter} | |
``` | |
# extract parameters from Parameters | |
export.after[@io.swagger.annotations.Parameters]=groovy:``` | |
def maps = it.annMap("io.swagger.annotations.Parameters") | |
for(map in maps.value){ | |
${resolve_parameter} | |
} | |
``` | |
# swaggerv3 extract parameters from Parameters | |
export.after[@io.swagger.v3.oas.annotations.Parameters]=groovy:``` | |
def maps = it.annMap("io.swagger.v3.oas.annotations.Parameters") | |
for(map in maps.value){ | |
${resolve_parameter} | |
} | |
``` | |
# extract parameters from Operation.parameters | |
export.after[@io.swagger.v3.oas.annotations.Operation]=groovy:``` | |
def maps = it.annMap("io.swagger.v3.oas.annotations.Operation").parameters | |
if(maps==null)return | |
for(map in maps){ | |
${resolve_parameter} | |
} | |
``` | |
# Resolve the response from `APIResponse` into the API description | |
resolve_swagger3_api_response=``` | |
api.setResponseCode(map.responseCode?:200) | |
api.appendResponseBodyDesc(map.description) | |
def responseHeaders = map.headers | |
if(responseHeaders!=null){ | |
for(responseHeader in responseHeaders) { | |
api.setResponseHeader(responseHeader.name,"",responseHeader.required?:true,responseHeader.description) | |
} | |
} | |
``` | |
# Resolve `APIResponse` into the API description | |
export.after[@io.swagger.v3.oas.annotations.responses.ApiResponse]=groovy:``` | |
def map = it.annMap("io.swagger.v3.oas.annotations.responses.ApiResponse") | |
${resolve_swagger3_api_response} | |
``` | |
# Resolve `APIResponses` into the API description | |
export.after[@io.swagger.v3.oas.annotations.responses.ApiResponses]=groovy:``` | |
def maps = it.annMap("io.swagger.v3.oas.annotations.responses.ApiResponses") | |
for(map in maps.value){ | |
${resolve_swagger3_api_response} | |
} | |
``` | |
# extract parameters from Operation.parameters | |
export.after[@io.swagger.v3.oas.annotations.Operation]=groovy:``` | |
def maps = it.annMap("io.swagger.v3.oas.annotations.Operation").responses | |
if(maps==null)return | |
for(map in maps){ | |
${resolve_swagger3_api_response} | |
} | |
``` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment