LoginPages.razor.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using AntDesign;
  2. using Microsoft.AspNetCore.Components;
  3. using Microsoft.AspNetCore.Components.Authorization;
  4. using System.Net.Http;
  5. using System.Net.Http.Json;
  6. using wispro.sp.share.webViewObject;
  7. namespace wispro.sp.webclient.Pages
  8. {
  9. public partial class LoginPages
  10. {
  11. [Inject] public HttpClient Http { get; set; }
  12. [Inject] public MessageService MsgSvr { get; set; }
  13. [Inject] public AuthenticationStateProvider AuthProvider { get; set; }
  14. loginDto model = new loginDto();
  15. bool isLoading;
  16. async void OnLogin()
  17. {
  18. isLoading = true;
  19. var httpResponse = await Http.PostAsJsonAsync<loginDto>($"http://localhost:39476/api/account/Login", model);
  20. userToken result = await httpResponse.Content.ReadFromJsonAsync<userToken>();
  21. if (string.IsNullOrWhiteSpace(result?.Token) == false)
  22. {
  23. _ = MsgSvr.Success($"登录成功");
  24. ((AuthProvider)AuthProvider).MarkUserAsAuthenticated(result);
  25. }
  26. else
  27. {
  28. _ = MsgSvr.Error($"用户名或密码错误");
  29. }
  30. isLoading = false;
  31. //await InvokeAsync(StateHasChanged);
  32. }
  33. }
  34. }