Refactoring authentication to support server-side Blazor using a seamless login flow.
This commit is contained in:
@ -13,17 +13,18 @@ namespace Oqtane.Shared
|
||||
this.jsRuntime = jsRuntime;
|
||||
}
|
||||
|
||||
public Task<string> SetCookie(string name, string value, int days)
|
||||
public Task SetCookie(string name, string value, int days)
|
||||
{
|
||||
try
|
||||
{
|
||||
return jsRuntime.InvokeAsync<string>(
|
||||
jsRuntime.InvokeAsync<string>(
|
||||
"interop.setCookie",
|
||||
name, value, days);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return Task.FromResult(string.Empty);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
}
|
||||
|
||||
@ -41,18 +42,48 @@ namespace Oqtane.Shared
|
||||
}
|
||||
}
|
||||
|
||||
public Task<string> AddCSS(string filename)
|
||||
public Task AddCSS(string filename)
|
||||
{
|
||||
try
|
||||
{
|
||||
jsRuntime.InvokeAsync<string>(
|
||||
"interop.addCSS",
|
||||
filename);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
}
|
||||
|
||||
public Task<string> GetElementByName(string name)
|
||||
{
|
||||
try
|
||||
{
|
||||
return jsRuntime.InvokeAsync<string>(
|
||||
"interop.addCSS",
|
||||
filename);
|
||||
"interop.getElementByName",
|
||||
name);
|
||||
}
|
||||
catch
|
||||
{
|
||||
return Task.FromResult(string.Empty);
|
||||
}
|
||||
}
|
||||
|
||||
public Task SubmitForm(string path, object fields)
|
||||
{
|
||||
try
|
||||
{
|
||||
jsRuntime.InvokeAsync<string>(
|
||||
"interop.submitForm",
|
||||
path, fields);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -127,7 +127,7 @@ private async Task Refresh()
|
||||
var authState = await AuthenticationStateProvider.GetAuthenticationStateAsync();
|
||||
if (authState.User.Identity.IsAuthenticated)
|
||||
{
|
||||
user = await UserService.GetCurrentUserAsync();
|
||||
user = await UserService.GetUserAsync(authState.User.Identity.Name);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -25,7 +25,14 @@ namespace Oqtane.Shared
|
||||
string url = pagestate.Alias.Path + "/" + path;
|
||||
if (reload)
|
||||
{
|
||||
url += "?reload=true";
|
||||
if (url.Contains("?"))
|
||||
{
|
||||
url += "&reload=true";
|
||||
}
|
||||
else
|
||||
{
|
||||
url += "?reload=true";
|
||||
}
|
||||
}
|
||||
return url;
|
||||
}
|
||||
|
Reference in New Issue
Block a user