🐛 Fix discord oidc since it has no discovery endpoint
This commit is contained in:
parent
ca2d37eb39
commit
e40514e440
@ -32,7 +32,18 @@ public class DiscordOidcService(
|
||||
var queryString = string.Join("&", queryParams.Select(p => $"{p.Key}={Uri.EscapeDataString(p.Value)}"));
|
||||
return $"https://discord.com/api/oauth2/authorize?{queryString}";
|
||||
}
|
||||
|
||||
|
||||
protected override async Task<OidcDiscoveryDocument?> GetDiscoveryDocumentAsync()
|
||||
{
|
||||
return new OidcDiscoveryDocument
|
||||
{
|
||||
AuthorizationEndpoint = "https://discord.com/oauth2/authorize",
|
||||
TokenEndpoint = "https://discord.com/api/oauth2/token",
|
||||
UserinfoEndpoint = "https://discord.com/api/users/@me",
|
||||
JwksUri = null
|
||||
};
|
||||
}
|
||||
|
||||
public override async Task<OidcUserInfo> ProcessCallbackAsync(OidcCallbackData callbackData)
|
||||
{
|
||||
var tokenResponse = await ExchangeCodeForTokensAsync(callbackData.Code);
|
||||
|
@ -65,7 +65,7 @@ public abstract class OidcService(
|
||||
/// <summary>
|
||||
/// Retrieves the OpenID Connect discovery document
|
||||
/// </summary>
|
||||
protected async Task<OidcDiscoveryDocument?> GetDiscoveryDocumentAsync()
|
||||
protected virtual async Task<OidcDiscoveryDocument?> GetDiscoveryDocumentAsync()
|
||||
{
|
||||
// Construct a cache key unique to the current provider:
|
||||
var cacheKey = $"oidc-discovery:{ProviderName}";
|
||||
|
Loading…
x
Reference in New Issue
Block a user