URL接口信息

在项目启动过程中,我们已扫描了所有的controller HTTP接口信息类并将信息存储在内存中,具体可以参考 com.Obatis.core.annotation.config.LoadAnnotationUrl 类中的实现。针对 URL的处理提供了回调接口,如果项目需要将接口信息上传到认证中心做鉴权或者其他服务进行额外处理,定义一个Spring bean 实现 com.Obatis.config.url.RegisterUrlConfigure 即可。参考如下:

package com.Obatis.config.url;

import java.util.List;
import java.util.Map;

/**
* 该接口提供url注册实现,如果需要将url信息注册到相应的服务或者进行处理,需要定义一个spring bean 实现该接口
* 特别说明:接口中文描述信息获取目前是基于swagger信息,尚未开放拓展
* @author HuangLongPu
*/
public interface RegisterUrlConfigure {

/**
* 注解url地址接口,map 中的url信息包含了notLogin url信息
* url 存储的 map 类,key 为controller注解的URL地址,value 为注册URL的方法说明(借助于 swagger实现)
* @param urlArray
*/
void registerUrl(List<UrlBeanInfo> urlArray);

/**
* 注册无需登录即可访问的url地址接口
* url 存储的 map 类,key 为controller注解的URL地址,value 为注册URL的方法说明(借助于 swagger实现)
* @param notLoginUrlInfo
*/
void registerNotLoginUrl(Map<String, String> notLoginUrlInfo);
}

如果在本项目中获取所有URL 信息,使用以下方式:

List<UrlBeanInfo> list = BeanAnotationUrlHandle.getUrlInfo();

如果在本项目中获取所有注解了 @NotLogin 的URL 信息,使用以下方式:

Map<String, String> map = LoadNotLoginAnnotationUrl.getNotLoginUrl();

判断URL接口是否注解了 @NotLogin,使用以下方式:

boolean notLoginFlag = LoadNotLoginAnnotationUrl.validateNotLogin("url");