zoukankan      html  css  js  c++  java
  • 跨域

    拦截器:

    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.web.servlet.HandlerInterceptor;
    import org.springframework.web.servlet.ModelAndView;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    /**
     * jsonp post提交处理拦截器
     */
    public class PostRequestInterceptor implements HandlerInterceptor {
    
    	private Logger logger = LoggerFactory.getLogger(PostRequestInterceptor.class);
    
    	private String INDEX_PAGE;
    
    	public PostRequestInterceptor(String indexPage) {
    		this.INDEX_PAGE = indexPage;
    	}
    
    	@Override
    	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
    			throws Exception {
    		String url = request.getRequestURI();
    
    		//logger.info("Parameter : {}",request.getParameterMap());
    		//logger.info("PostRequestInterceptor.preHandle execute url|  " + url  + " | ------------- end");
    		//response.setContentType("text/html;charset=UTF-8");
    		response.setHeader("Access-Control-Allow-Credentials", "true");
    		//(request.getHeader("Origin").contains("127")) {
    		String origin = request.getHeader("Origin");
    //		if (StringUtil.isNotBlank(INDEX_PAGE)) {
    //			origin = origin + "," + INDEX_PAGE;
    //		}
    		response.setHeader("Access-Control-Allow-Origin", origin);
    		//}
    		response.setHeader("Access-Control-Allow-Headers", "Access-Control-Allow-Headers,X-Requested-With,X_Requested_With");
    		response.setHeader("Access-Control-Allow-Methods", "POST,GET,OPTIONS");
    		//	response.addHeader("Access-Control-Max-Age", "1000");
    		if ("IE".equals(request.getParameter("type"))) {
    			response.addHeader("XDomainRequestAllowed", "1");
    		}
    		return true;
    	}
    
    	@Override
    	public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
                               ModelAndView modelAndView) throws Exception {
    
    	}
    
    	@Override
    	public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
    			throws Exception {
    
    
    	}
    }
    

     

    添加拦截器:

    import javax.annotation.PostConstruct;
    import PostRequestInterceptor;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.core.convert.support.GenericConversionService;
    import org.springframework.web.bind.support.ConfigurableWebBindingInitializer;
    import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
    import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter;
    
    @Configuration
    public class WebConfig extends WebMvcConfigurerAdapter {
    
    	@Autowired
    	private RequestMappingHandlerAdapter handlerAdapter;
    
    	@Value("${constant.indexPage}")
    	private String indexPage;
    
    	@Override
    	public void addInterceptors(InterceptorRegistry registry) {
    		registry.addInterceptor(new PostRequestInterceptor(indexPage)).addPathPatterns("/**");
    		super.addInterceptors(registry);
    	}
    
    	/**
    	 * 增加字符串转日期的功能
    	 */
    	@PostConstruct
    	public void initEditableValidation() {
    		ConfigurableWebBindingInitializer initializer = (ConfigurableWebBindingInitializer) handlerAdapter
    				.getWebBindingInitializer();
    		if (initializer.getConversionService() != null) {
    			GenericConversionService genericConversionService = (GenericConversionService) initializer
    					.getConversionService();
    			genericConversionService.addConverter(new WebDateConverter());
    		}
    
    	}
    
    }
  • 相关阅读:
    matlab cell
    matlab linux 快捷键设置——有问题还是要解决
    latex 小结
    TOJ 1258 Very Simple Counting
    TOJ 2888 Pearls
    HDU 1248 寒冰王座
    TOJ 3486 Divisibility
    TOJ 3635 过山车
    TOJ 1840 Jack Straws
    HDU 4460 Friend Chains
  • 原文地址:https://www.cnblogs.com/wanhua-wu/p/10733930.html
Copyright © 2011-2022 走看看