http://www.tuicool.com/articles/3UBzIbb
增加如下配置:
dispatchOptionsRequest
true
加在springdispatcher 裡面
springdispatcher
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springMvc-viewresolver.xml
dispatchOptionsRequest
true
1
過濾器代碼
package com.allcam.andedu.abc.filter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.allcam.andedu.abc.pojo.UserCache;
public class SystemFilter implements Filter
{
private static final List STRINGS = new ArrayList();
private static final String UTF8_CODE = "UTF-8";
static
{
STRINGS.add("jsp");
STRINGS.add("js");
STRINGS.add("css");
STRINGS.add("images");
STRINGS.add("backRes");
STRINGS.add("anon");
STRINGS.add("ckplayer");
STRINGS.add("htm");
STRINGS.add("ico");
STRINGS.add("uploadImage");
}
@Override
public void destroy()
{
}
@Override
public void doFilter(ServletRequest servletRequest,ServletResponse servletResponse,FilterChain chain)
throws IOException,ServletException
{
HttpServletRequest request = (HttpServletRequest)servletRequest;
HttpServletResponse response = (HttpServletResponse)servletResponse;
// 指定允許其他域名通路
response.setHeader("Access-Control-Allow-Origin","*");
// 響應類型
response.setHeader("Access-Control-Allow-Methods","POST,GET,OPTIONS,DELETE");
// 響應頭設定
response.setHeader("Access-Control-Allow-Headers","Content-Type,x-requested-with,X-Custom-Header");
if ("OPTIONS".equals(request.getMethod())) { response.setStatus(204); } // response.setHeader("Access-Control-Max-Age","3600"); request.setCharacterEncoding(UTF8_CODE); response.setCharacterEncoding(UTF8_CODE); chain.doFilter(request,response); } @Override public void init(FilterConfig filterConfig) throws ServletException { } public boolean isAuth(String url) { for (String string : STRINGS) { if (url.contains(string)) { return true; } } return false; } }
總結
如果覺得程式設計之家網站内容還不錯,歡迎将程式設計之家網站推薦給程式員好友。
本圖文内容來源于網友網絡收集整理提供,作為學習參考使用,版權屬于原作者。