using Furion;
using Furion.HttpRemote;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.Core
{
///
/// 默认资源提供者
///
public class DefaultResourceHttpProvider : IResourceHttpProvider
{
public async Task SendAsStringAsync(HttpRequestBuilder builder)
{
var token = App.HttpContext.Request.Headers["Authorization"].ToString();
if (token.IsNotNull())
{
builder = builder.AddAuthentication(new AuthenticationHeaderValue("Authorization", token));
}
var refreshToken = App.HttpContext.Request.Headers["X-Authorization"].ToString();
if (refreshToken.IsNotNull())
{
builder = builder.AddAuthentication(new AuthenticationHeaderValue("X-Authorization", refreshToken));
}
return await App.GetRequiredService().SendAsStringAsync(builder);
}
}
}