public async Task <AuthResponseDTO> RequestTokenAsync([FromBody] OsuTokenRequestDTO tokenRequestDto) { // To auth a code - https://osu.ppy.sh/oauth/authorize?client_id=4309&redirect_uri=http://localhost:61899/osu/callback&response_type=code&scope=identify public&state=chicken string clientSecret = Environment.GetEnvironmentVariable("OsuRequest_Osu_ClientSecret"); if (clientSecret == null) { throw new HttpResponseException(); } AuthRequestDTO authRequestDto = new AuthRequestDTO() { ClientId = 4309, ClientSecret = clientSecret, Code = tokenRequestDto.Code, GrantType = "authorization_code", RedirectUri = "http://localhost:61899/osu/callback" }; HttpResponseMessage response = await httpClient.PostAsync("/oauth/token", JsonContent.Create(authRequestDto, null, snakeCaseSerializerOptions)); if (response.IsSuccessStatusCode) { AuthResponseDTO authResponse = await response.Content.ReadFromJsonAsync <AuthResponseDTO>(snakeCaseSerializerOptions); return(authResponse); } throw new HttpResponseException() { Status = (int)response.StatusCode, Value = await response.Content.ReadAsStringAsync() }; }
public async Task RequestTokenAsync(string code) { OsuTokenRequestDTO osuTokenRequestDto = new OsuTokenRequestDTO() { Code = code }; HttpResponseMessage response = await authHttpClient.PostAsync("/auth/osu/token", JsonContent.Create(osuTokenRequestDto)); if (response.IsSuccessStatusCode) { AuthResponseDTO authResponse = await response.Content.ReadFromJsonAsync <AuthResponseDTO>(); accessToken = authResponse.AccessToken; osuHttpClient.DefaultRequestHeaders.Add("Authorization", "Bearer " + accessToken); } }