Ejemplo n.º 1
0
        public SoundCloudClient(SoundCloudAuth auth)
        {
            if (auth == null)
            {
                throw new ArgumentNullException(nameof(auth));
            }

            _auth = auth;
        }
Ejemplo n.º 2
0
        public async Task <SoundCloudAccess> Auth(SoundCloudAuth auth, CancellationToken token)
        {
            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri("https://api.soundcloud.com");

                var authContent = new StringContent(JsonConvert.SerializeObject(auth));

                var authResponse = await client.PostAsync("/oauth2/token", authContent);

                if (authResponse.IsSuccessStatusCode)
                {
                    var returnString = await authResponse.Content.ReadAsStringAsync();

                    _access = JsonConvert.DeserializeObject <SoundCloudAccess>(returnString);

                    _access.ClientId = auth.ClientId;

                    return(_access);
                }

                throw new InvalidOperationException("");
            }
        }