Commit e0f97b14 by stylefeng

通知管理内容接受html

parent 06ced613
...@@ -19,6 +19,7 @@ import org.springframework.context.annotation.Bean; ...@@ -19,6 +19,7 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.web.context.request.RequestContextListener; import org.springframework.web.context.request.RequestContextListener;
import java.util.Arrays;
import java.util.Properties; import java.util.Properties;
/** /**
...@@ -100,7 +101,9 @@ public class WebConfig { ...@@ -100,7 +101,9 @@ public class WebConfig {
*/ */
@Bean @Bean
public FilterRegistrationBean xssFilterRegistration() { public FilterRegistrationBean xssFilterRegistration() {
FilterRegistrationBean registration = new FilterRegistrationBean(new XssFilter()); XssFilter xssFilter = new XssFilter();
xssFilter.setUrlExclusion(Arrays.asList("/notice/update","/notice/add"));
FilterRegistrationBean registration = new FilterRegistrationBean(xssFilter);
registration.addUrlPatterns("/*"); registration.addUrlPatterns("/*");
return registration; return registration;
} }
......
...@@ -54,7 +54,7 @@ NoticeInfoDlg.close = function () { ...@@ -54,7 +54,7 @@ NoticeInfoDlg.close = function () {
* 收集数据 * 收集数据
*/ */
NoticeInfoDlg.collectData = function () { NoticeInfoDlg.collectData = function () {
this.noticeInfoData['content'] = NoticeInfoDlg.editor.txt.text(); this.noticeInfoData['content'] = NoticeInfoDlg.editor.txt.html();
this.set('id').set('title'); this.set('id').set('title');
} }
......
...@@ -4,12 +4,15 @@ package com.stylefeng.guns.core.xss; ...@@ -4,12 +4,15 @@ package com.stylefeng.guns.core.xss;
import javax.servlet.*; import javax.servlet.*;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.io.IOException; import java.io.IOException;
import java.util.List;
public class XssFilter implements Filter { public class XssFilter implements Filter {
FilterConfig filterConfig = null; FilterConfig filterConfig = null;
private List<String> urlExclusion = null;
public void init(FilterConfig filterConfig) throws ServletException { public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig; this.filterConfig = filterConfig;
} }
...@@ -19,8 +22,21 @@ public class XssFilter implements Filter { ...@@ -19,8 +22,21 @@ public class XssFilter implements Filter {
} }
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
chain.doFilter(new XssHttpServletRequestWrapper( HttpServletRequest httpServletRequest = (HttpServletRequest) request;
(HttpServletRequest) request), response); String servletPath = httpServletRequest.getServletPath();
if (urlExclusion != null && urlExclusion.contains(servletPath)) {
chain.doFilter(request, response);
} else {
chain.doFilter(new XssHttpServletRequestWrapper((HttpServletRequest) request), response);
}
}
public List<String> getUrlExclusion() {
return urlExclusion;
} }
public void setUrlExclusion(List<String> urlExclusion) {
this.urlExclusion = urlExclusion;
}
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment