add logic removed in #1245 back to HttpClient creation
This commit is contained in:
parent
0fd16fbb59
commit
f6cc11bd3b
|
@ -6,14 +6,12 @@ using System.Net.Http;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Runtime.Loader;
|
using System.Runtime.Loader;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Microsoft.AspNetCore.Authorization;
|
|
||||||
using Microsoft.AspNetCore.Components;
|
using Microsoft.AspNetCore.Components;
|
||||||
using Microsoft.AspNetCore.Http;
|
using Microsoft.AspNetCore.Http;
|
||||||
using Microsoft.AspNetCore.Identity;
|
using Microsoft.AspNetCore.Identity;
|
||||||
using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Hosting;
|
||||||
using Microsoft.OpenApi.Models;
|
using Microsoft.OpenApi.Models;
|
||||||
using Oqtane.Infrastructure;
|
using Oqtane.Infrastructure;
|
||||||
using Oqtane.Interfaces;
|
|
||||||
using Oqtane.Modules;
|
using Oqtane.Modules;
|
||||||
using Oqtane.Repository;
|
using Oqtane.Repository;
|
||||||
using Oqtane.Security;
|
using Oqtane.Security;
|
||||||
|
@ -157,16 +155,16 @@ namespace Microsoft.Extensions.DependencyInjection
|
||||||
{
|
{
|
||||||
// creating the URI helper needs to wait until the JS Runtime is initialized, so defer it.
|
// creating the URI helper needs to wait until the JS Runtime is initialized, so defer it.
|
||||||
var navigationManager = s.GetRequiredService<NavigationManager>();
|
var navigationManager = s.GetRequiredService<NavigationManager>();
|
||||||
var httpContextAccessor = s.GetRequiredService<IHttpContextAccessor>();
|
|
||||||
var authToken = httpContextAccessor.HttpContext.Request.Cookies[".AspNetCore.Identity.Application"];
|
|
||||||
var client = new HttpClient(new HttpClientHandler { UseCookies = false });
|
var client = new HttpClient(new HttpClientHandler { UseCookies = false });
|
||||||
if (authToken != null)
|
|
||||||
{
|
|
||||||
client.DefaultRequestHeaders.Add("Cookie", ".AspNetCore.Identity.Application=" + authToken);
|
|
||||||
}
|
|
||||||
|
|
||||||
client.BaseAddress = new Uri(navigationManager.Uri);
|
client.BaseAddress = new Uri(navigationManager.Uri);
|
||||||
|
|
||||||
|
// set the cookies to allow HttpClient API calls to be authenticated
|
||||||
|
var httpContextAccessor = s.GetRequiredService<IHttpContextAccessor>();
|
||||||
|
foreach (var cookie in httpContextAccessor.HttpContext.Request.Cookies)
|
||||||
|
{
|
||||||
|
client.DefaultRequestHeaders.Add("Cookie", cookie.Key + "=" + cookie.Value);
|
||||||
|
}
|
||||||
|
|
||||||
return client;
|
return client;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user