Ejemplo n.º 1
0
        public async Task <IHttpActionResult> DeleteFavMovieAsync(string userName, [FromBody] FavoriteMovieModelIn movie)
        {
            await Task.Yield();

            if (userName == null || movie == null)
            {
                return(BadRequest("Nor user nor movie can be empty"));
            }
            var target = ConfigurationManager.AppSettings["User"];

            target += $"/{userName}/favoriteMovies";
            var request   = new HttpRequestMessage(HttpMethod.Delete, target);
            var authToken = Request.Headers.Authorization;

            request.Headers.Authorization = authToken;
            var jsonContent   = JsonConvert.SerializeObject(movie);
            var stringContent = new StringContent(jsonContent, Encoding.UTF8, "application/json");

            request.Content = stringContent;
            var response = await client.SendAsync(request);

            var returned = await response.Content.ReadAsStringAsync().ConfigureAwait(false);

            JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
            var contentJson = jsonSerializer.DeserializeObject(returned);

            if (response.IsSuccessStatusCode)
            {
                return(Ok(contentJson));
            }
            else
            {
                return(Content(response.StatusCode, contentJson));
            }
        }
Ejemplo n.º 2
0
        public async Task <IHttpActionResult> DeleteFavMovieAsync(string userName, [FromBody] FavoriteMovieModelIn movie)
        {
            await Task.Yield();

            if (userName == null || movie == null)
            {
                return(BadRequest("Nor user nor movie can be empty"));
            }
            var token         = Request.Headers.Authorization.ToString();
            var isCorrectUser = CheckIfSessionIsCorrect(userName, token);

            if (!isCorrectUser)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.Forbidden, "You cant modify other users accounts")));
            }
            var wasUpdated = userLogic.RemoveFavoriteMovie(userName, movie.MovieName);

            if (!wasUpdated)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.NotFound, "The movie or user does not exist in our servers")));
            }
            return(Ok("Updated favorite movie list"));
        }