|
.net提供了内置的接口调试方式
1.新建.net core web api控制台应用程序
2.封装好jwt验证机制
- token令牌验证机制
- /// <summary>
- /// 登录
- /// </summary>
- /// <param name="request"></param>
- /// <returns></returns>
- /// <exception cref="NotImplementedException"></exception>
- public async Task<UserResponse> LoginAsync(UserInfoRequest request)
- {
- UserResponse userResponse = null;
- UserInfoVo user = await _userRepository.GetUserInfoByUserCodeAsync(request.UserCode);
- if (user == null)
- {
- throw new Exception("用户名不存在");
- }
- if (user.Status == -1)
- {
- throw new Exception("账户被锁定");
- }
- if (user.UserPassword != AesHelper.Encrypt(request.UserPassword))
- {
- throw new Exception("用户名或密码不正确");
- }
- //判断redis里是否已经存在当前患者
- CurrentUser currentUser = await _userRepository.GetCurrentUserAsync(user.UserCode);
- //如果已经存在,并且token没有过期,则不用生成新的token,直接将redis里的进行返回
- if (currentUser != null && DateTime.Now < currentUser.ExpireTime)
- {
- return currentUser.Adapt<UserResponse>();
- }
- //如果不存在或者token过期,则生成新的token
- SsoUser ssoUser = new SsoUser()
- {
- UserCode = user.UserCode,
- UserName = user.UserName,
- };
- String token = await _jwtService.BuildToken(ssoUser);
- await _userRepository.DelCurrentUserAsync(ssoUser.UserCode);
- currentUser = new CurrentUser()
- {
- UserCode = ssoUser.UserCode,
- UserName = user.UserName,
- Token = token,
- ExpireSeconds = _jwtConfig.ExpireSeconds,
- ExpireTime = DateTime.Now.AddSeconds(_jwtConfig.ExpireSeconds)
- };
- await _userRepository.SetCurrentUserAsync(currentUser, _jwtConfig.ExpireSeconds);
- userResponse = new UserResponse()
- {
- Token = token,
- UserCode = user.UserCode,
- UserName = user.UserName,
- ExpireSeconds = _jwtConfig.ExpireSeconds,
- };
- return userResponse;
- }
复制代码 3.调试
3.1 启动应用程序,调佣接口
HttpGet方式
调用内置接口调试方式
外部接口调用工具:
HttpPost方式
外部接口调用工具:
请求body内容
返回结果
来源:https://www.cnblogs.com/chenshibao/p/18487583
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|