Esempio n. 1
0
        public async Task <ActionResult> GetUser()
        {
            try
            {
                var Token = HttpContext.Request.Headers["Token"];
                var users = await this.AccountServiceInstance.GetUser(Token);

                var ListResponse = CustomHttpResponse.List <UserView>();
                ListResponse.Length        = users.Count;
                ListResponse.Page          = 1;
                ListResponse.IsEnd         = true;
                ListResponse.RecordPerPage = users.Count;
                ListResponse.Total         = users.Count;
                ListResponse.Results       = users;
                return(Json(ListResponse));
            }
            catch (CustomHttpResponseException ex)
            {
                var StateResponse = CustomHttpResponse.State();
                StateResponse.Status  = ex.CustomData.Status;
                StateResponse.Message = ex.CustomData.Message;
                var Response = Json(StateResponse);
                Response.StatusCode = ex.CustomData.StatusCode;
                return(Response);
            }
            catch (Exception)
            {
                var StateResponse = CustomHttpResponse.State();
                StateResponse.Status  = "Internal Server Error";
                StateResponse.Message = "There is something wrong. Come back later please.";
                var Response = Json(StateResponse);
                Response.StatusCode = 500;
                return(Response);
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> Update([FromBody] StoryAggregate StoryInstance)
        {
            try
            {
                string Token = HttpContext.Request.Headers["Token"];

                StoryAggregate StoryAggregate = this.StoryBusinessInstance.Update(Token, StoryInstance);

                var Response       = CustomHttpResponse.Single <StoryAggregate>();
                var ResultResponse = new JsonResult(Response);
                ResultResponse.StatusCode  = 200;
                ResultResponse.ContentType = "application/json";

                Response.Result = StoryAggregate;
                return(ResultResponse);
            }
            catch (Exception ex)
            {
                Console.WriteLine("++++++++++++++++++++++++++++++++++++++++++++");
                Console.WriteLine("++++++++++++++++++++++++++++++++++++++++++++");
                Console.WriteLine("++++++++++++++++++++++++++++++++++++++++++++");
                Console.WriteLine(JsonConvert.SerializeObject(ex));

                var Response       = CustomHttpResponse.State();
                var ResultResponse = new JsonResult(Response);
                ResultResponse.StatusCode  = 400;
                ResultResponse.ContentType = "application/json";

                Response.Status  = "BadRequest";
                Response.Message = "Missing token";
                return(ResultResponse);
            }
        }
Esempio n. 3
0
        private async Task <bool> GenerateErrorResponse(DownstreamContext Context, int StatusCode, string ContentType, string Status, string Message)
        {
            var StateResponse = CustomHttpResponse.State();

            Context.HttpContext.Response.StatusCode  = StatusCode;
            Context.HttpContext.Response.ContentType = ContentType;
            StateResponse.Status  = Status;
            StateResponse.Message = Message;
            var Response      = JsonConvert.SerializeObject(StateResponse);
            var ResponseBytes = Encoding.UTF8.GetBytes(Response);
            await Context.HttpContext.Response.Body.WriteAsync(ResponseBytes, 0, ResponseBytes.Length);

            return(true);
        }
Esempio n. 4
0
        public ActionResult Clear()
        {
            var Folder = "";

            this.EnsureUploadFolder(out Folder);
            var stateResponse = CustomHttpResponse.State();

            stateResponse.Message = "All files are clear";
            stateResponse.Status  = "Done";
            foreach (var FilePath in Directory.EnumerateFiles(Folder, "*", SearchOption.AllDirectories))
            {
                System.IO.File.Delete(FilePath);
            }
            return(Json(stateResponse));
        }
        public async Task Invoke(HttpContext Context)
        {
            var    Token = Context.Request.Headers.FirstOrDefault(h => h.Key == "Token").Value.ToString();
            string Path  = Context.Request.Path.ToString();

            if (!Utilities.CheckExceptPaths(ExceptPaths, Path))
            {
                if (!string.IsNullOrEmpty(Token))
                {
                    try
                    {
                        if (!Token.Contains("Bearer") || ((Token.Contains("Bearer") && !Token.StartsWith("Bearer"))))
                        {
                            throw new Exception("Invalid Token");
                        }
                        Token = Token.Replace("Bearer", "").Trim();
                        var Handler   = new JwtSecurityTokenHandler();
                        var JsonToken = Handler.ReadJwtToken(Token);
                    }
                    catch (Exception)
                    {
                        Context.Response.StatusCode = 401;
                        var StateResponse = CustomHttpResponse.State();
                        StateResponse.Status  = "Unauthorized";
                        StateResponse.Message = "Token Invalid";
                        var ResponseBytes = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(StateResponse));
                        await Context.Response.Body.WriteAsync(ResponseBytes, 0, ResponseBytes.Length);

                        return;
                    }
                    await Next(Context);
                }
                else
                {
                    Context.Response.StatusCode = 403;
                    var StateResponse = CustomHttpResponse.State();
                    StateResponse.Status  = "Forbidden";
                    StateResponse.Message = "Missing token";
                    var ResponseBytes = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(StateResponse));
                    await Context.Response.Body.WriteAsync(ResponseBytes, 0, ResponseBytes.Length);
                }
            }
            else
            {
                await Next(Context);
            }
        }
Esempio n. 6
0
        public IActionResult List()
        {
            try
            {
                string Token = HttpContext.Request.Headers["Token"];

                List <StoryAggregate> StoryAggregate = this.StoryBusinessInstance.List(Token);

                var ListResponse   = CustomHttpResponse.List <StoryAggregate>();
                var ResultResponse = new JsonResult(ListResponse);
                ResultResponse.StatusCode  = 200;
                ResultResponse.ContentType = "application/json";

                ListResponse.IsEnd         = true;
                ListResponse.Length        = StoryAggregate.Count;
                ListResponse.Page          = 1;
                ListResponse.Total         = StoryAggregate.Count;
                ListResponse.RecordPerPage = StoryAggregate.Count;
                ListResponse.Results       = StoryAggregate;

                return(ResultResponse);
            }
            catch (Exception ex)
            {
                Console.WriteLine("++++++++++++++++++++++++++++++++++++++++++++");
                Console.WriteLine("++++++++++++++++++++++++++++++++++++++++++++");
                Console.WriteLine("++++++++++++++++++++++++++++++++++++++++++++");
                Console.WriteLine(ex.Message);

                var Response       = CustomHttpResponse.State();
                var ResultResponse = new JsonResult(Response);
                ResultResponse.StatusCode  = 400;
                ResultResponse.ContentType = "application/json";

                Response.Status  = "BadRequest";
                Response.Message = "Missing token";
                return(ResultResponse);
            }
        }
Esempio n. 7
0
        public async Task <ActionResult> Upload()
        {
            try
            {
                string Token = HttpContext.Request.Headers["Token"];

                var Folder = "";
                this.EnsureUploadFolder(out Folder);
                var FilePath = Path.Combine(Folder, DateTime.Now.Ticks.ToString());

                Model.File FileInstance = await this.FileBusinessInstance.UploadFile(Request, Token, FilePath);

                var Response       = CustomHttpResponse.Single <Model.File>();
                var ResultResponse = new JsonResult(Response);
                ResultResponse.StatusCode  = 200;
                ResultResponse.ContentType = "application/json";

                Response.Result = FileInstance;
                return(ResultResponse);
            }
            catch (Exception ex)
            {
                Console.WriteLine("=============================================");
                Console.WriteLine("=============================================");
                Console.WriteLine("=============================================");
                Console.WriteLine(JsonConvert.SerializeObject(ex));
                var Response       = CustomHttpResponse.State();
                var ResultResponse = new JsonResult(Response);
                ResultResponse.StatusCode  = 400;
                ResultResponse.ContentType = "application/json";

                Response.Status  = "BadRequest";
                Response.Message = "Missing token";
                return(ResultResponse);
            }
        }