JavaWeb项目快速入门04之模拟登录(SpringBoot+Gradle+Groovy)

举报
孙小北 发表于 2021/10/06 16:48:12 2021/10/06
【摘要】 JavaWeb项目快速入门04之模拟登录(SpringBoot+Gradle+Groovy)使用POST方法实现登录模拟,并将用户信息写入session一、登录接口实现实现POST接口,模拟登录。创建LoginController并完成功能。参数:username,password。登录成功,写入Session。登录失败,返回消息或抛出异常:用户名或密码错误。/** * 登录demo */@...

JavaWeb项目快速入门04之模拟登录(SpringBoot+Gradle+Groovy)

使用POST方法实现登录模拟,并将用户信息写入session

一、登录接口实现

实现POST接口,模拟登录。创建LoginController并完成功能。参数:username,password。登录成功,写入Session。登录失败,返回消息或抛出异常:用户名或密码错误。

/**
 * 登录demo
 */
@RestController
public class LoginController {

    //登录入口
    @PostMapping("/login")
    public def login(@RequestBody Map body, HttpServletRequest request){
        String username= (String) body.get("username");
        String password= (String) body.get("password");

        // 注:Java里面字符串比较用equals,而不是==
        if(!username.equals("admin") || !password.equals("123456")){
            throw new RuntimeException("用户名密码错误");
        }
        request.getSession().setAttribute("user",username);
        return [status: 200]
    }

    //获取登录者信息
    @GetMapping("/userinfo")
    public String userinfo(@SessionAttribute String user){
        return user;
    }

    //获取Header的值
    @GetMapping("getHeader")
    public String getHeader(@RequestHeader String myHeader){
        return myHeader;
    }
}

1.png

编写从Session获取当前登录者信息,接口如上图。读取Session的方法学习。

另外,获取http请求header里面的值的获取自行补充学习。

二、测试接口

编写测试代码,进行测试

2.png

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。