拦截器拦截emoji
This commit is contained in:
@@ -2,6 +2,7 @@ package cn.pluss.platform.configurer;
|
||||
|
||||
import cn.pluss.platform.configurer.extend.CurrentUserMethodArgumentResolver;
|
||||
import cn.pluss.platform.configurer.extend.FastJsonHttpMessageConverterEx;
|
||||
import cn.pluss.platform.interceptor.EmojiInterceptor;
|
||||
import cn.pluss.platform.interceptor.RequestInfoInterceptor;
|
||||
import cn.pluss.platform.interceptor.TokenRegistryInterceptor;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
@@ -72,6 +73,7 @@ public class WebConfigurer implements WebMvcConfigurer {
|
||||
registry.addInterceptor(new RequestInfoInterceptor());
|
||||
|
||||
registry.addInterceptor(tokenRegistryInterceptor()).excludePathPatterns(excludes);
|
||||
registry.addInterceptor(emojiInterceptor()).excludePathPatterns(excludes);
|
||||
}
|
||||
|
||||
@Bean
|
||||
@@ -88,4 +90,8 @@ public class WebConfigurer implements WebMvcConfigurer {
|
||||
public FastJsonHttpMessageConverterEx fastJsonHttpMessageConverterEx() {
|
||||
return new FastJsonHttpMessageConverterEx();
|
||||
}
|
||||
@Bean
|
||||
public EmojiInterceptor emojiInterceptor() {
|
||||
return new EmojiInterceptor();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package cn.pluss.platform.interceptor;
|
||||
|
||||
import cn.pluss.platform.exception.MsgException;
|
||||
import cn.pluss.platform.util.Emoji;
|
||||
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.BufferedReader;
|
||||
|
||||
/**
|
||||
* @author lyf
|
||||
*/
|
||||
public class EmojiInterceptor extends HandlerInterceptorAdapter {
|
||||
@Override
|
||||
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
String line;
|
||||
BufferedReader reader = request.getReader();
|
||||
while ((line = reader.readLine()) != null) {
|
||||
sb.append(line);
|
||||
}
|
||||
String body = sb.toString();
|
||||
boolean emoji = Emoji.containsEmoji(body);
|
||||
if (emoji) {
|
||||
throw new MsgException("请正确输入");//这里是我自己封装了一个异常,根据自己需要写自己的异常
|
||||
}
|
||||
return super.preHandle(request, response, handler);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user