Browse Source

👕 调整Jwt获取

IdentityServer4
WangJunZzz 4 years ago
parent
commit
147771951d
  1. 33
      aspnet-core/services/host/Lion.AbpPro.HttpApi.Host/AbpProHttpApiHostModule.cs
  2. 4
      aspnet-core/services/host/Lion.AbpPro.HttpApi.Host/appsettings.json

33
aspnet-core/services/host/Lion.AbpPro.HttpApi.Host/AbpProHttpApiHostModule.cs

@ -180,34 +180,29 @@ namespace Lion.AbpPro
return Task.CompletedTask;
}
var accessToken =
currentContext.Request.Query["access_token"].FirstOrDefault() ??
currentContext.Request.Cookies[
AbpProHttpApiHostConst.DefaultCookieName];
if (accessToken.IsNullOrWhiteSpace())
var accessToken = string.Empty;
if (currentContext.HttpContext.Request.Headers.ContainsKey("Authorization"))
{
return Task.CompletedTask;
accessToken = currentContext.HttpContext.Request.Headers["Authorization"];
if (!string.IsNullOrWhiteSpace(accessToken))
{
accessToken = accessToken.Split(" ").LastOrDefault();
}
}
if (path.StartsWithSegments("/signalr"))
if (accessToken.IsNullOrWhiteSpace())
{
currentContext.Token = accessToken;
accessToken = currentContext.Request.Query["access_token"].FirstOrDefault();
}
currentContext.Request.Headers.Remove("Authorization");
currentContext.Request.Headers.Add("Authorization",
$"Bearer {accessToken}");
// 如果请求来自hangfire 或者cap
if (path.ToString().StartsWith("/hangfire") ||
path.ToString().StartsWith("/cap"))
if (accessToken.IsNullOrWhiteSpace())
{
// currentContext.HttpContext.Response.Headers.Remove(
// "X-Frame-Options");
currentContext.Token = accessToken;
accessToken = currentContext.Request.Cookies[AbpProHttpApiHostConst.DefaultCookieName];
}
currentContext.Token = accessToken;
currentContext.Request.Headers.Remove("Authorization");
currentContext.Request.Headers.Add("Authorization", $"Bearer {accessToken}");
return Task.CompletedTask;
}

4
aspnet-core/services/host/Lion.AbpPro.HttpApi.Host/appsettings.json

@ -1,5 +1,4 @@
{
"Serilog1": "12",
"Serilog": {
"Using": [
"Serilog.Sinks.Console",
@ -13,7 +12,8 @@
"Hangfire": "Information",
"DotNetCore.CAP": "Information",
"Serilog.AspNetCore": "Information",
"Microsoft.EntityFrameworkCore": "Warning"
"Microsoft.EntityFrameworkCore": "Warning",
"Microsoft.AspNetCore": "Information"
}
},
"WriteTo": [

Loading…
Cancel
Save