LoginController.cs
1.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
using Infrastructure;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Options;
using System;
using WebApp;
using WebRepository;
namespace WebMvc.Areas.Api.Controllers
{
/// <summary>
/// 系统登录
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class LoginController : ControllerBase
{
private string _appKey = "hhweb";
private IAuth _authUtil;
public LoginController(IAuth authUtil)
{
_authUtil = authUtil;
}
/// <summary>
/// 登入接口
/// </summary>
/// <param name="loginEntity">用户登录信息</param>
/// <returns></returns>
[HttpPost("Login")]
public string Login(LoginEntity loginEntity)
{
var resp = new Response();
try
{
if (loginEntity == null)
throw new Exception("请输入用户名及密码!");
var result = _authUtil.Login(_appKey, loginEntity.username, loginEntity.password);
if (result.Code == 200)
{
Response.Cookies.Append("Token", result.Token);
}
else
{
resp.Code = 500;
resp.Message = result.Message;
}
}
catch (Exception e)
{
resp.Code = 500;
resp.Message = e.Message;
}
return JsonHelper.Instance.Serialize(resp);
}
/// <summary>
/// 登出
/// </summary>
[HttpPost("Logout")]
public void Logout()
{
_authUtil.Logout();
}
/// <summary>
/// 心跳接口,用于延长cookie有效期
/// </summary>
[HttpPost("heartbeat")]
public void heartbeat()
{
_authUtil.CheckLogin();
}
}
}