public override void OnActionExecuting(ActionExecutingContext filterContext) { HttpSessionStateBase session = filterContext.HttpContext.Session; if (filterContext.HttpContext.Request.Cookies["userId"] != null && filterContext.HttpContext.Request.Cookies["userId"].Value.ToString().Trim() != "") { session["userId"] = filterContext.HttpContext.Request.Cookies["userId"].Value; } if (session["userId"] == null || (filterContext.HttpContext.Request.Cookies["token"] == null || filterContext.HttpContext.Request.Cookies["token"].Value.ToString().Trim() == "")) { session.Remove("Menu"); session.Remove("MyMenu"); filterContext.Result = new RedirectToRouteResult( new RouteValueDictionary { { "Controller", "Login" }, { "Action", "Index" } }); } else { if (session["Menu"] == null) { var restClientContainer = new RestClientContainer(ConfigurationManager.AppSettings["ApiUrl"]); var dataRet = restClientContainer.SendRequest <ResponseResult>("Accounts/GetMenu", RestSharp.Method.GET).Result.Data; string json = JsonConvert.SerializeObject(dataRet); var result = Helper <List <MenuViewModel> > .Convert(json); session["Menu"] = result; } } }
public void Ctor_PassingName_SetsNameProperty() { const string name = "MyClient1"; var restClientContainer = new RestClientContainer(new ServiceCollection().BuildServiceProvider(), name, "http://dalsoft.co.uk", null); Assert.That(restClientContainer.Name, Is.EqualTo(name)); }
public void Ctor_PassingCorrectParams_RestClientFuncUsesNamedHttpClientFromIHttpClientFactory() { const string name = "MyClient1"; var mockServiceProvider = new Mock <IServiceProvider>(); var restClient = new HttpClient(); var mockHttpClientFactory = new Mock <IHttpClientFactory>(); mockHttpClientFactory.Setup(provider => provider.CreateClient(name)).Returns(restClient); mockServiceProvider.Setup(provider => provider.GetService(typeof(IHttpClientFactory))).Returns(mockHttpClientFactory.Object); var restClientContainer = new RestClientContainer(mockServiceProvider.Object, name, "http://dalsoft.co.uk", null); var httpClientWrapper = (HttpClientWrapper)restClientContainer.RestClient().HttpClientWrapper; Assert.That(httpClientWrapper.HttpClient, Is.EqualTo(restClient)); }
public void Ctor_PassingDefaultHeaders_RestClientFuncUsesPassedDefaultHeaders() { const string clientName = "MyClient1"; const string baseUri = "http://dalsoft.co.uk"; var mockServiceProvider = new Mock <IServiceProvider>(); var restClient = new HttpClient(); var mockHttpClientFactory = new Mock <IHttpClientFactory>(); mockHttpClientFactory.Setup(provider => provider.CreateClient(clientName)).Returns(restClient); mockServiceProvider.Setup(provider => provider.GetService(typeof(IHttpClientFactory))).Returns(mockHttpClientFactory.Object); var restClientContainer = new RestClientContainer(mockServiceProvider.Object, clientName, baseUri, new Headers(new { name = clientName })); var restClientResult = restClientContainer.RestClient(); Assert.That(restClientResult.DefaultRequestHeaders["name"], Is.EqualTo(clientName)); }
public void Ctor_PassingBaseUri_RestClientFuncUsesPassedBaseUri() { const string name = "MyClient1"; const string baseUri = "http://dalsoft.co.uk"; var mockServiceProvider = new Mock <IServiceProvider>(); var restClient = new HttpClient(); var mockHttpClientFactory = new Mock <IHttpClientFactory>(); mockHttpClientFactory.Setup(provider => provider.CreateClient(name)).Returns(restClient); mockServiceProvider.Setup(provider => provider.GetService(typeof(IHttpClientFactory))).Returns(mockHttpClientFactory.Object); var restClientContainer = new RestClientContainer(mockServiceProvider.Object, name, baseUri, null); var restClientResult = restClientContainer.RestClient(); Assert.That(restClientResult.BaseUri, Is.EqualTo(baseUri)); }
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext) { HttpSessionStateBase session = filterContext.HttpContext.Session; if (filterContext.HttpContext.Request.Cookies["userId"] != null && filterContext.HttpContext.Request.Cookies["userId"].Value.ToString().Trim() != "") { session["userId"] = filterContext.HttpContext.Request.Cookies["userId"].Value; } if (session["userId"] == null || (filterContext.HttpContext.Request.Cookies["token"] == null || filterContext.HttpContext.Request.Cookies["token"].Value.ToString().Trim() == "")) { session.Remove("Menu"); session.Remove("MyMenu"); filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new { controller = "Login", action = "Index" })); return; } var language = filterContext.HttpContext.Request.Cookies["Lang"] == null ? "en-US" : filterContext.HttpContext.Request.Cookies["Lang"].Value.ToString(); string actionName = filterContext.ActionDescriptor.ActionName; string controllerName = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName; if (actionName.ToLower() == "Index".ToLower() && controllerName.ToLower() == "Home".ToLower()) { session["PageName"] = language == "ar-EG"?"الشاشة الرئيسية":"Main Page"; return; } var querystring = filterContext.RequestContext.HttpContext.Request.QueryString; string parameter = querystring["ScreenType"] == null ? null : Decoder.Decode(querystring["ScreenType"]); //IRestfulApi<List<bool>, List<bool>> res = new RestfulApi<List<bool>, List<bool>>(ConfigurationManager.AppSettings["ApiUrl"]); var restClientContainer = new RestClientContainer(ConfigurationManager.AppSettings["ApiUrl"]); //var menu = res.GetAsyncByGetVerb($"Role/CanShowPage/{language}/{controllerName}/{actionName}/{parameter}", null, filterContext.HttpContext.Request.Cookies["token"].Value.ToString()).Result; //if (menu != null ) session["PageName"] = menu; //if (menu == null ) //{ filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new { controller = "UnAuthorize", action = "Index" })); // } }
public SecurityController() { restClientContainer = new RestClientContainer(ConfigurationManager.AppSettings["ApiUrl"]); }