Fixed RPC proxied requests
This commit is contained in:
@@ -54,6 +54,21 @@ namespace Discord.API
|
|||||||
_restClient = _restClientProvider(baseUrl);
|
_restClient = _restClientProvider(baseUrl);
|
||||||
_restClient.SetHeader("accept", "*/*");
|
_restClient.SetHeader("accept", "*/*");
|
||||||
_restClient.SetHeader("user-agent", DiscordRestConfig.UserAgent);
|
_restClient.SetHeader("user-agent", DiscordRestConfig.UserAgent);
|
||||||
|
_restClient.SetHeader("authorization", GetPrefixedToken(AuthTokenType, _authToken));
|
||||||
|
}
|
||||||
|
internal static string GetPrefixedToken(TokenType tokenType, string token)
|
||||||
|
{
|
||||||
|
switch (tokenType)
|
||||||
|
{
|
||||||
|
case TokenType.Bot:
|
||||||
|
return $"Bot {token}";
|
||||||
|
case TokenType.Bearer:
|
||||||
|
return $"Bearer {token}";
|
||||||
|
case TokenType.User:
|
||||||
|
return token;
|
||||||
|
default:
|
||||||
|
throw new ArgumentException("Unknown OAuth token type", nameof(tokenType));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
internal virtual void Dispose(bool disposing)
|
internal virtual void Dispose(bool disposing)
|
||||||
{
|
{
|
||||||
@@ -90,26 +105,12 @@ namespace Discord.API
|
|||||||
|
|
||||||
AuthTokenType = TokenType.User;
|
AuthTokenType = TokenType.User;
|
||||||
_authToken = null;
|
_authToken = null;
|
||||||
_restClient.SetHeader("authorization", null);
|
|
||||||
await RequestQueue.SetCancelTokenAsync(_loginCancelToken.Token).ConfigureAwait(false);
|
await RequestQueue.SetCancelTokenAsync(_loginCancelToken.Token).ConfigureAwait(false);
|
||||||
_restClient.SetCancelToken(_loginCancelToken.Token);
|
_restClient.SetCancelToken(_loginCancelToken.Token);
|
||||||
|
|
||||||
AuthTokenType = tokenType;
|
AuthTokenType = tokenType;
|
||||||
_authToken = token;
|
_authToken = token;
|
||||||
switch (tokenType)
|
_restClient.SetHeader("authorization", GetPrefixedToken(AuthTokenType, _authToken));
|
||||||
{
|
|
||||||
case TokenType.Bot:
|
|
||||||
token = $"Bot {token}";
|
|
||||||
break;
|
|
||||||
case TokenType.Bearer:
|
|
||||||
token = $"Bearer {token}";
|
|
||||||
break;
|
|
||||||
case TokenType.User:
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new ArgumentException("Unknown oauth token type", nameof(tokenType));
|
|
||||||
}
|
|
||||||
_restClient.SetHeader("authorization", token);
|
|
||||||
|
|
||||||
LoginState = LoginState.LoggedIn;
|
LoginState = LoginState.LoggedIn;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,15 +72,6 @@ namespace Discord
|
|||||||
if (!_isDisposed)
|
if (!_isDisposed)
|
||||||
ApiClient.Dispose();
|
ApiClient.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override async Task OnLoginAsync(TokenType tokenType, string token)
|
|
||||||
{
|
|
||||||
await ApiClient.LoginAsync(tokenType, token).ConfigureAwait(false);
|
|
||||||
}
|
|
||||||
protected override async Task OnLogoutAsync()
|
|
||||||
{
|
|
||||||
await ApiClient.LogoutAsync().ConfigureAwait(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override Task ValidateTokenAsync(TokenType tokenType, string token)
|
protected override Task ValidateTokenAsync(TokenType tokenType, string token)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user