using Avalonia_Services.Services.AuthService; using System; using System.Threading; using System.Threading.Tasks; namespace Avalonia_PC.Authentication { /// /// 第三方授权客户端占位实现。接入真实第三方接口时替换此服务即可。 /// public sealed class DefaultPcThirdPartyAuthorizationClient : IPcThirdPartyAuthorizationClient { public Task ValidateAuthorizationCodeAsync( string authorizationCode, CancellationToken cancellationToken = default) { if (string.IsNullOrWhiteSpace(authorizationCode) || string.Equals(authorizationCode, "invalid", StringComparison.OrdinalIgnoreCase)) { return Task.FromResult(ThirdPartyAuthCheckResult.AuthorizationLost); } return Task.FromResult(ThirdPartyAuthCheckResult.Valid); } public Task RefreshAuthorizationAsync( string authorizationReference, CancellationToken cancellationToken = default) { if (string.Equals(authorizationReference, "invalid", StringComparison.OrdinalIgnoreCase)) { return Task.FromResult(ThirdPartyAuthCheckResult.AuthorizationLost); } return Task.FromResult(ThirdPartyAuthCheckResult.TemporaryFailure); } } }