Пример #1
0
        //zet de playlist op het account van de gebruiker
        public async Task <DbPlaylistDTO> PostPlaylist(UserDTO user, string token)
        {
            var postplaylist = new PostPlaylistDTO {
                Name        = playlist.Name,
                Description = playlist.Description,
                Uris        = playlist.GetUris()
            };
            string id = await _playlistAccess.PostPlaylist(postplaylist, user, token);

            var result = new DbPlaylistDTO
            {
                CreationDate = DateTime.Now,
                PlaylistId   = id,
                PlaylistName = playlist.Name,
                UserId       = user.id
            };

            return(result);
        }
        // de playlist op het account van de gebruiker zetten
        public async Task <string> PostPlaylist(PostPlaylistDTO playlist, UserDTO user, string token)
        {
            _client.DefaultRequestHeaders.Clear();
            _client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);
            var properties = new Dictionary <string, string>
            {
                { "name", playlist.Name },
                { "description", playlist.Description }
            };
            var json    = JsonConvert.SerializeObject(properties);
            var content = new StringContent(json);
            //een lege playlist op het account zetten met een naam en omschrijving
            var response = await ApiContext.Post <JObject>(_client, $"https://api.spotify.com/v1/users/{user.id}/playlists", content);

            //de playlist vullen met de liedjes
            await ApiContext.Post <JObject>(_client, $"https://api.spotify.com/v1/playlists/{response["id"]}/tracks?uris={playlist.Uris}", null);

            return(response["id"].ToString());
        }