前后端分离,后端处理跨域问题

由于前后端的端口和地址都有可能不一样,而我这边主要是后端维护,因此在后端servlet里面设置后端响应:

public class BaseServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String requestURI = req.getRequestURI();
        String methodName = requestURI.substring(requestURI.lastIndexOf('/') + 1);
        Class<? extends BaseServlet> aClass = this.getClass();
        try {
            Method method = aClass.getMethod(methodName, HttpServletRequest.class, HttpServletResponse.class);
            method.invoke(this,req,resp);
        } catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {
            e.printStackTrace();
        }
        //后面是跨域的地址,我这前端是8080,后端是8088
        resp.setHeader("Access-Control-Allow-Origin","http://localhost:8080");
        resp.setHeader("Access-Control-Allow-Methods","http://localhost:8080");
        resp.setHeader("Access-Control-Max-Age","4200");
        resp.setHeader("Access-Control-Allow-Header","http://localhost:8080");
        resp.setHeader("Access-Control-Allow-Credentials","true");

    }
}
posted @ 2023-02-03 19:48  Liku007  阅读(29)  评论(0编辑  收藏  举报