请稍等 ...
×

采纳答案成功!

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

为登入状态下修改密码,为什么需要token,我感觉可有可无啊

为登入状态下修改密码,为什么需要token,
我感觉可有可无啊


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

2回答

看你笑呵呵 2017-08-22 14:28:08

如果不加token,是不是你只要拿到了修改密码的接口就可以随意修改任何用户的密码呢

在checkAnswer中回答问题正确存入一个token,修改密码的接口去验证传入的token和本身获取的token是否相同来判断是否是同一个用户

1 回复 有任何疑惑可以回复我~
  • 我不明白,他又不知道我的问题和密码,他拿什么修改我的密码呢?一个接口就能修改任何用户的密码?
    回复 有任何疑惑可以回复我~ 2018-01-30 06:23:42
  • Geely 回复 321121254 #2
    http://coding.imooc.com/learn/questiondetail/16637.html 同学看看这个。
    回复 有任何疑惑可以回复我~ 2018-02-04 10:24:33
  • lovis 回复 321121254 #3
    if(org.apache.commons.lang3.StringUtils.equals(forgetToken,token)){
                String md5Password  = MD5Util.MD5EncodeUtf8(passwordNew);
                int rowCount = userMapper.updatePasswordByUsername(username,md5Password);
    
                if(rowCount > 0){
                    return ServerResponse.createBySuccessMessage("修改密码成功");
                }
            }else{
                return ServerResponse.createByErrorMessage("token错误,请重新获取重置密码的token");
            }
    
    
      <update id="updatePasswordByUsername" parameterType="map">
        update mmall_user
        SET password = #{passwordNew},update_time = now()
        where username = #{username}
      </update>
    
    如果你把有关token的代码都去掉,sql语句中,你只要知道用户名就可以修改密码,压根就不需要知道你的密码和问题
    回复 有任何疑惑可以回复我~ 2018-03-06 11:20:44
慕粉1433416698 2018-10-01 09:38:40

登录状态下修改密码,不需要token吧。 只有未登录时,才需要token

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信