private void ProcessPostData()
        {
            var contentLen = Environment.GetEnvironmentVariable("CONTENT_LENGTH");

            if (contentLen == null)
            {
                return;
            }

            int len = Int32.Parse(contentLen);

            if (len == 0)
            {
                return;
            }

            _post_raw = new byte[len];
            using (var stdin = Console.OpenStandardInput()) {
                stdin.Read(_post_raw, 0, len);
            }

            var type = Environment.GetEnvironmentVariable("CONTENT_TYPE");

            if (type != null && type.StartsWith("multipart/"))
            {
                var boundary = type.Substring(type.IndexOf('=') + 1);
                _post = new PostRequestData(_post_raw, boundary);
            }
            else
            {
                _post = new PostRequestData(Encoding.UTF8.GetString(_post_raw));
            }
        }
Exemple #2
0
        public ActionResult <PostResponseData> Post([FromBody] PostRequestData requestData)
        {
            if (!ValidationUtils.ValidateEmail(requestData.Email))
            {
                return(BadRequest(new { Message = "Email is invalid" }));
            }

            if (!ValidationUtils.ValidatePassword(requestData.Password))
            {
                return(BadRequest(new { Message = "Password is invalid" }));
            }

            var  userRepository = UserRepository;
            User existingUser   = userRepository.Find(requestData.Email);

            if (existingUser != null)
            {
                return(BadRequest(new { Message = "User with given email already exists" }));
            }

            User user = UserRepository.Create(requestData.Email, requestData.Password);

            return(Ok(new PostResponseData()
            {
                Id = user.Id,
                Email = user.Email,
                Token = JwtUtils.GenerateToken(user, _jwtConfig)
            }));
        }
Exemple #3
0
 public IActionResult CreatePost(PostRequestData post)
 {
     if (post == null)
     {
         logger.LogWarning("POST blog posts BAD REQUEST");
         return(BadRequest());
     }
     //Requirement of props Title, Description and Body  is obtained by [Requiered] Anotation
     if (context.Posts == null)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, "Error retrieving data from the database"));
     }
     try
     {
         var newSlug = Utilities.Slugify(post.BlogPost.Title);
         if (context.Posts.FirstOrDefault(p => p.Title.Equals(post.BlogPost.Title) || p.Slug.Equals(newSlug)) != null)
         {
             logger.LogWarning("POST blog posts with slug ({newSlug}) BAD REQUEST", post);
             return(BadRequest("The Slug field is taken."));
         }
         var isPost  = true;
         var newPost = postService.CreatePostAsync(post.BlogPost, isPost).Result;
         return(CreatedAtAction(nameof(GetPostBySlug), new { slug = newPost.Slug }, newPost));
     }
     catch (Exception)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, "Error retrieving data from the database"));
     }
 }
Exemple #4
0
        public ActionResult <TodoObject> Post([FromBody] PostRequestData requestData)
        {
            Todo todo = TodoRepository.Create(
                user: CurrentUser,
                title: requestData.Title,
                dueDate: requestData.DueDate,
                description: requestData.Description,
                priority: requestData.Priority
                );

            return(CreatedAtAction(nameof(Get), new { id = todo.Id }, transform(todo)));
        }
Exemple #5
0
        private static async Task WriteRequestBodyAsync(HttpWebRequest request, PostRequestData requestData)
        {
            request.ContentType = "application/json";
            request.SendChunked = true;

            using (var requestStream = request.GetRequestStream())
            {
                var postData      = JsonConvert.SerializeObject(requestData.Data);
                var postDataBytes = Encoding.UTF8.GetBytes(postData);
                await requestStream.WriteAsync(postDataBytes, 0, postDataBytes.Length, requestData.CancellationToken);
            }
        }
        public ActionResult <String> Post(PostRequestData post)
        {
            GameResolver gameResolver = new GameResolver();
            Colors       color        = gameResolver.GetCurrentRule(post.Canvas);

            switch (color)
            {
            case (Colors.RED):
                return(gameResolver.GetWinner(post.Players));

            case (Colors.ORANGE):
                return(gameResolver.SameNumbers(post.Players));

            default:
                throw new ArgumentException();
            }
        }
Exemple #7
0
 public ActionResult <PostRequestData> GetPostBySlug(string slug)
 {
     try
     {
         var post = postService.GetPostBySlugAsync(slug).Result;
         if (post == null)
         {
             logger.LogWarning("GET blog post with slug ({slug}) NOT FOUND", slug);
             return(NotFound("Tag with slug {slug} does not exists."));
         }
         var postRequestData = new PostRequestData {
             BlogPost = post
         };
         return(Ok(postRequestData));
     }
     catch (Exception)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, "Error retrieving data from the database"));
     }
 }
 private void FillGetMap(string get)
 {
     _post = new PostRequestData(get);
 }