-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathProgram.cs
36 lines (32 loc) · 1.31 KB
/
Program.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using System;
using System.Net.Http.Headers;
using System.Runtime.Versioning;
using System.Text;
using System.Threading.Tasks;
using Avalonia;
using Avalonia.Browser;
using Avalonia.ReactiveUI;
using AvaloniaApplication1;
using DevExpress.DataAccess.Native.Json;
[assembly: SupportedOSPlatform("browser")]
internal sealed partial class Program
{
private static Task Main(string[] args) {
JsonLoaderHelper.ConfigureHttpClient = (client, authentication) => {
return;
};
JsonLoaderHelper.ConfigureHttpRequestMessage = (message, authorizationInfo) => {
if (authorizationInfo != null && !string.IsNullOrWhiteSpace(authorizationInfo.Username)) {
var authenticationString = $"{authorizationInfo.Username}:{authorizationInfo.Password}";
var base64EncodedAuthenticationString = Convert.ToBase64String(Encoding.UTF8.GetBytes(authenticationString));
message.Headers.Authorization = new AuthenticationHeaderValue("Basic", base64EncodedAuthenticationString);
}
};
return BuildAvaloniaApp()
.WithInterFont()
.UseReactiveUI()
.StartBrowserAppAsync("out");
}
public static AppBuilder BuildAvaloniaApp()
=> AppBuilder.Configure<App>();
}