请老师看看,一直404

来源:3-1 多端设备自动适配

慕仰7036876

2020-06-01 14:26:41

package com.imooc.filter;
import java.io.IOException;
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;
public class DeviceAdapter implements Filter{
 @Override
 public void destroy() {
  // TODO Auto-generated method stub
  
 }
 @Override
 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
   throws IOException, ServletException {
  // TODO Auto-generated method stub
  HttpServletRequest req = (HttpServletRequest)request;
  HttpServletResponse res = (HttpServletResponse)response;
  String uri =req.getRequestURI();
  if(uri.startsWith("/desktop") || uri.startsWith("/mobile")) {
   chain.doFilter(request, response);
  }else {
   String userAgent = req.getHeader("user-agent").toLowerCase();
   String targetURI = "";
   if(userAgent.indexOf("android")!=-1 || userAgent.indexOf("iphone")!=-1) {
    targetURI = "/mobile" + uri;
    System.out.println("移动设备正在访问,重新跳转URI:" + targetURI);
    res.sendRedirect(targetURI);
   }else {
    targetURI = "/desktop" + uri;
    System.out.println("移动设备正在访问,重新跳转URI:" + targetURI);
    res.sendRedirect(targetURI);
   }
  }
 }
 @Override
 public void init(FilterConfig arg0) throws ServletException {
  // TODO Auto-generated method stub
  
 }
}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
   <img alt="" src="/images/desktop.jpg">
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
   <img alt="" src="/images/mobile.jpg" style="wigth:100%">
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
   <img alt="" src="/images/mobile.jpg" style="wigth:100%">
</body>
</html>

http://img.mukewang.com/climg/5ed49f9a09868a0f18920952.jpg

写回答

1回答

好帮手慕阿慧

2020-06-01

同学你好,项目访问路径应该为/,请同学检查一下,如下:

http://img.mukewang.com/climg/5ed4c1010934d45b06250552.jpg

同学应该访问http://localhost:8080/desktop/index.html,不用带项目名。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

0

0 学习 · 9666 问题

查看课程