类 RequestHandler
java.lang.Object
org.ssssssss.magicapi.core.web.MagicController
org.ssssssss.magicapi.core.web.RequestHandler
- 所有已实现的接口:
JsonCodeConstants
请求入口处理
- 作者:
- mxd
-
字段概要
字段修饰符和类型字段说明private static final org.slf4j.Loggerprivate final RequestMagicDynamicRegistryprivate final ResultProvider从类继承的字段 org.ssssssss.magicapi.core.web.MagicController
configuration, magicAPIService, magicBackupService从接口继承的字段 org.ssssssss.magicapi.core.config.JsonCodeConstants
API_NOT_FOUND, BACKUP_NOT_ENABLED, BODY_INVALID, CRON_ID_REQUIRED, DATASOURCE_KEY_INVALID, DS_KEY_CONFLICT, DS_KEY_REQUIRED, DS_URL_REQUIRED, FILE_IS_REQUIRED, FILE_NOT_FOUND, FILE_PATH_NOT_EXISTS, FILE_SAVE_FAILURE, FUNCTION_PATH_REQUIRED, GROUP_ID_REQUIRED, GROUP_NOT_FOUND, HEADER_INVALID, IS_READ_ONLY, MOVE_NAME_CONFLICT, MOVE_PATH_CONFLICT, NAME_INVALID, NAME_REQUIRED, NOT_SUPPORTED_GROUP_TYPE, PARAMETER_INVALID, PATH_CONFLICT, PATH_REQUIRED, PATH_VARIABLE_INVALID, PERMISSION_INVALID, REQUEST_METHOD_REQUIRED, REQUEST_PATH_CONFLICT, REQUEST_PATH_REQUIRED, RESOURCE_LOCKED, RESOURCE_PATH_CONFLICT, SAVE_GROUP_PATH_CONFLICT, SCRIPT_REQUIRED, SECRET_KEY_IS_REQUIRED, SIGN_IS_INVALID, SRC_GROUP_CONFLICT, SUCCESS, TARGET_IS_REQUIRED, TOPIC_ID_REQUIRED, TOPIC_TAG_REPEAT -
构造器概要
构造器构造器说明RequestHandler(MagicConfiguration configuration, RequestMagicDynamicRegistry requestMagicDynamicRegistry) -
方法概要
修饰符和类型方法说明private ObjectafterCompletion(RequestEntity requestEntity, Object returnValue) private ObjectafterCompletion(RequestEntity requestEntity, Object returnValue, Throwable throwable) private ObjectbuildResult(RequestEntity requestEntity, JsonCode code, Object data) private ObjectconvertValue(DataType dataType, String name, String value) 转换参数类型private org.ssssssss.script.MagicScriptContextcreateMagicScriptContext(String scriptName, RequestEntity requestEntity) 构建 MagicScriptContextprivate ObjectdoPostHandle(RequestEntity requestEntity, Object value) 执行后置拦截器private ObjectdoPreHandle(RequestEntity requestEntity) 执行前置拦截器doValidate(String scriptName, String comment, List<? extends BaseDefinition> validateParameters, Map<String, Object> parameters, JsonCode jsonCode, boolean disabledUnknownParameter) private booleandoValidateBody(String comment, BaseDefinition parameter, Map<String, Object> parameters, JsonCode jsonCode, Class<?> target) invoke(MagicHttpServletRequest request, MagicHttpServletResponse response, Map<String, Object> pathVariables, Map<String, Object> defaultHeaders, Map<String, Object> parameters) 测试入口、实际请求入口private ObjectinvokeRequest(RequestEntity requestEntity) private ObjectprocessException(RequestEntity requestEntity, Throwable root) private ObjectreadRequestBody(MagicHttpServletRequest request) 读取RequestBodyprivate voidremoveUnknownKey(Map<String, Object> src, List<? extends BaseDefinition> definitions) private Objectresponse(RequestEntity requestEntity, Object value) 包装返回结果从类继承的方法 org.ssssssss.magicapi.core.web.MagicController
allowVisit, allowVisit, allowVisit, doValid, entities, invalidLogin从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 org.ssssssss.magicapi.core.config.JsonCodeConstants
isTrue, notBlank, notNull
-
字段详细资料
-
logger
private static final org.slf4j.Logger logger -
EMPTY_MAP
-
DEFAULT_ALLOW_READ_RESPONSE_HEADERS
-
resultProvider
-
requestMagicDynamicRegistry
-
-
构造器详细资料
-
RequestHandler
public RequestHandler(MagicConfiguration configuration, RequestMagicDynamicRegistry requestMagicDynamicRegistry)
-
-
方法详细资料
-
invoke
@ResponseBody @Valid(requireLogin=false) public Object invoke(MagicHttpServletRequest request, MagicHttpServletResponse response, @PathVariable(required=false) Map<String, Object> pathVariables, @RequestHeader(required=false) Map<String, throws ThrowableObject> defaultHeaders, @RequestParam(required=false) Map<String, Object> parameters) 测试入口、实际请求入口- 参数:
request- HttpServletRequestresponse- HttpServletResponsepathVariables- 路径变量parameters- 表单参数无效输入:'&URL参数'- 返回:
- 返回请求结果
- 抛出:
Throwable- 处理失败抛出的异常
-
buildResult
-
removeUnknownKey
-
doValidateBody
-
doValidate
-
convertValue
转换参数类型 -
invokeRequest
- 抛出:
Throwable
-
processException
- 抛出:
Throwable
-
readRequestBody
读取RequestBody- 抛出:
IOException
-
createMagicScriptContext
private org.ssssssss.script.MagicScriptContext createMagicScriptContext(String scriptName, RequestEntity requestEntity) 构建 MagicScriptContext -
response
包装返回结果 -
doPostHandle
执行后置拦截器- 抛出:
Exception
-
afterCompletion
-
afterCompletion
private Object afterCompletion(RequestEntity requestEntity, Object returnValue, Throwable throwable) -
doPreHandle
执行前置拦截器- 抛出:
Exception
-