请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

访问/users/login.action报错 404

图片描述

图片描述

package com.imooc.controller;

import java.util.UUID;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;

import com.imooc.bean.AdminUser;
import com.imooc.utils.IMoocJSONResult;

@Controller
@RequestMapping("/users")
public class UserController {
	
	@GetMapping("/login")
	public String login() {
		return "login";
	}
	
	@PostMapping("/login")
	public IMoocJSONResult login(String username, String password,
			HttpServletRequest request, HttpServletResponse response) {
		if(StringUtils.isBlank(username) || StringUtils.isBlank(password)) {
			return IMoocJSONResult.errorMsg("用户名或密码不能为空!");
		}else if(username.equals("lee") && password.equals("lee")) {
			String userToken = UUID.randomUUID().toString();
			AdminUser user = new AdminUser(userToken, username);
			request.getSession().setAttribute("sessionUser", user);
			return IMoocJSONResult.ok();
		}
		return IMoocJSONResult.errorMsg("登录失败,请重试!");
	}
	
	@GetMapping("/logout")
	public String logout(HttpServletRequest request) {
		request.getSession().removeAttribute("sessionUser");
		return "login";
	}
}

这是login.js中的部分代码

submitHandler: function(form) {
            	var loginForm = $('.login-form');
            	var hdnContextPath = $("#hdnContextPath").val();
            	$.ajax({
                    type: "post", // 提交方式 get/post
                    url: hdnContextPath + '/users/login.action', // 需要提交的 url
                    data: loginForm.serialize(),
                    dataType: "json",
                    success: function(res) {
                    	debugger
                        // 登录成功或者失败的提示信息
                        if (res.status == 200 && res.msg == "OK") {
                        	window.location.href = hdnContextPath + "/center.action";
                        } else {
//                        	SweetAlert.error(data.msg);
                        	alert(res.msg);
                        }
                    }
                });
            	
            }

正在回答 回答被采纳积分+3

2回答

风间影月 2019-02-26 19:17:16

你是通过maven的tomcat插件运行的项目呢?还是通过eclipse的插件tomcat运行的呢?

0 回复 有任何疑惑可以回复我~
  • 提问者 AllenAi #1
    eclipse配置debug configuration
    回复 有任何疑惑可以回复我~ 2019-02-26 19:29:23
提问者 AllenAi 2019-02-26 19:16:06

为啥前端显示返回的是/WEB-INF/center/users/login.jsp啊 

我明明返回的是IMoocJSONResult.ok()啊

0 回复 有任何疑惑可以回复我~
  • @PostMapping("/login")
    @RespondBody
    public IMoocJSONResult login
    
    注意第二行,需要加上,因为你当前的controller不是restcontroller
    回复 有任何疑惑可以回复我~ 2019-02-26 19:18:33
  • 提问者 AllenAi 回复 风间影月 #2
    哦哦 对对对。。明白了
    回复 有任何疑惑可以回复我~ 2019-02-26 19:29:48
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号