From 70ad0f9a66d65fb88f63b2c443130e06d062c4a8 Mon Sep 17 00:00:00 2001 From: RogueException Date: Thu, 28 Jul 2016 21:40:37 -0300 Subject: [PATCH] Fixed RPC proxied requests --- src/Discord.Net/API/DiscordRestApiClient.cs | 31 +++++++++++---------- src/Discord.Net/DiscordRpcClient.cs | 9 ------ 2 files changed, 16 insertions(+), 24 deletions(-) diff --git a/src/Discord.Net/API/DiscordRestApiClient.cs b/src/Discord.Net/API/DiscordRestApiClient.cs index 90658ef9d..ae208629e 100644 --- a/src/Discord.Net/API/DiscordRestApiClient.cs +++ b/src/Discord.Net/API/DiscordRestApiClient.cs @@ -54,6 +54,21 @@ namespace Discord.API _restClient = _restClientProvider(baseUrl); _restClient.SetHeader("accept", "*/*"); _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) { @@ -90,26 +105,12 @@ namespace Discord.API AuthTokenType = TokenType.User; _authToken = null; - _restClient.SetHeader("authorization", null); await RequestQueue.SetCancelTokenAsync(_loginCancelToken.Token).ConfigureAwait(false); _restClient.SetCancelToken(_loginCancelToken.Token); AuthTokenType = tokenType; _authToken = token; - switch (tokenType) - { - 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); + _restClient.SetHeader("authorization", GetPrefixedToken(AuthTokenType, _authToken)); LoginState = LoginState.LoggedIn; } diff --git a/src/Discord.Net/DiscordRpcClient.cs b/src/Discord.Net/DiscordRpcClient.cs index 6d3f2ac64..17800033e 100644 --- a/src/Discord.Net/DiscordRpcClient.cs +++ b/src/Discord.Net/DiscordRpcClient.cs @@ -72,15 +72,6 @@ namespace Discord if (!_isDisposed) 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) {