public async Task <SolicitudLogin> Login(SolicitudLogin Datos) { try { string url = "https://www.creativasoftlineapps.com/ScriptAppUnoMasCliente/frmLoginAppBitacora.aspx"; string content = JsonConvert.SerializeObject(Datos); StringContent body = new StringContent(content, Encoding.UTF8, "application/json"); var response = await Client.PostAsync(url, body); if (response.IsSuccessStatusCode) { var json = await response.Content.ReadAsStringAsync(); if (json.Substring(0, 5) != "Error") { var resultado = (SolicitudLogin)JsonConvert.DeserializeObject(json, typeof(SolicitudLogin)); return(resultado); } } return(null); } catch (Exception) { throw; } }
/// <summary> /// Metodo que sirve para obtener el token de persistencia cuando el usuario se loggea /// </summary> /// <param name="urlBase"> nos sirve para pasarle la url del servicio</param> /// <param name="solicitud">no sirve para mandar los datos de acceso del usuario</param> /// <returns></returns> public async Task <TokenResponse> GetToken( string urlBase, SolicitudLogin solicitud) { try { var Client = new HttpClient(); string url = urlBase; TokenResponse obj = new TokenResponse(); var data = JsonConvert.SerializeObject(solicitud); var content = new StringContent(data, Encoding.UTF8, "application/json"); var response = await Client.PostAsync(url, content); if (response.IsSuccessStatusCode) { var json = await response.Content.ReadAsStringAsync(); if (json.Substring(0, 5) != "Error") { var resultado = (TokenResponse)JsonConvert.DeserializeObject(json, typeof(TokenResponse)); return(resultado); } else { return(new TokenResponse { ErrorDescription = "Las credenciales no son validas" }); } } else { return(new TokenResponse { ErrorDescription = "Ocurrió un error, intentelo mas tarde." }); } } catch (Exception ex) { string a = ex.Message; return(null); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) //if (true) { if (Page.Request.HttpMethod == "POST") //if (true) { SolicitudLogin solicitudLogin = null; string Valor = ""; //Leer JSON try { using (var streamReader = new System.IO.StreamReader(Request.GetBufferedInputStream())) { Valor = streamReader.ReadToEnd(); } System.Web.Script.Serialization.JavaScriptSerializer jsonSerializer = new System.Web.Script.Serialization.JavaScriptSerializer(); solicitudLogin = jsonSerializer.Deserialize <SolicitudLogin>(Valor); } catch (Exception) { Valor = ""; } //if (true) if (Valor != "") { LoginApp loginApp = new LoginApp(); AppDatos appDatos = new AppDatos(); loginApp.conexion = ConfigurationManager.ConnectionStrings["Conexion_App"].ConnectionString; loginApp.usuario = solicitudLogin.usuario; loginApp.password = solicitudLogin.password; try { appDatos.login(loginApp); } catch (Exception ex) { loginApp.resultado = ex.Message; loginApp.DatosJson = "No se encontró."; } Response.Clear(); Response.ContentType = "application/text;"; if (loginApp.resultado == "REGOK") { Response.Write(loginApp.DatosJson); } else { Response.Write("Error " + loginApp.resultado); } Response.End(); } else { Response.Clear(); Response.ContentType = "application/text;"; Response.Write("Error ID:000: Valores Incorrectos"); Response.End(); } } else { Response.Clear(); Response.ContentType = "application/text;"; Response.Write("Error ID:002 Tipo Incorrecto"); Response.End(); } } }
private void CallService() { bool success = false; try { Device.BeginInvokeOnMainThread(() => UserDialogs.Instance.ShowLoading("Accesando a Tuxmandados...", MaskType.Black)); Task.Run(async() => { SolicitudLogin solicitud = new SolicitudLogin(); solicitud.usuario = Usuario; solicitud.password = Password; var res = await this.apiService.GetToken( "http://www.creativasoftlineapps.com/ScriptAppTuxmandados/frmLogin.aspx", solicitud); if (res != null) { TokenAccess = res.AccessToken; TokenType = res.TokenType; IDUsuario = res.IDUsuario; IDCOR = res.IDCOR; success = true; msgError = res.ErrorDescription; } }).ContinueWith(res => Device.BeginInvokeOnMainThread(async() => { if (success == false) { await App.Current.MainPage.DisplayAlert("Ocurrió un error", "El acceso no es válido", "Aceptar"); UserDialogs.Instance.HideLoading(); } else { UserDialogs.Instance.HideLoading(); if (string.IsNullOrEmpty(TokenAccess)) { IsEnable = true; await App.Current.MainPage.DisplayAlert( "Error", msgError, "Ok"); this.Password = string.Empty; return; } this.Password = string.Empty; IsEnable = true; var mainViewModel = MainViewModel.GetInstance(); mainViewModel.TokenResponse = new TokenResponse(); mainViewModel.TokenResponse.AccessToken = TokenAccess; mainViewModel.TokenResponse.TokenType = TokenType; mainViewModel.TokenResponse.IDUsuario = IDUsuario; mainViewModel.TokenResponse.IDCOR = IDCOR; mainViewModel.LoadMenu(); if (this.IsRemembered) { Settings.Token = TokenAccess; Settings.TokenType = TokenAccess; Settings.IDUsuario = IDUsuario.ToString(); Settings.IDCOR = IDCOR.ToString(); } if (mainViewModel.TokenType == 4) { App.Current.MainPage = new NavigationPage(new Views.Repartidor.R_AppTabbedPage()) { BarBackgroundColor = Color.FromHex("#33CAFF"), BarTextColor = Color.FromHex("#000000") }; App.Navigator = (NavigationPage)App.Current.MainPage; } else { // falta saber que tipo de cliente es... App.Current.MainPage = new NavigationPage(new AppTabbedPage()) { BarBackgroundColor = Color.FromHex("#002E6D"), BarTextColor = Color.FromHex("#EFCB4B") }; App.Navigator = (NavigationPage)App.Current.MainPage; } } })); } catch (Exception ex) { App.Current.MainPage.DisplayAlert("Ocurrió un error", ex.ToString(), "Aceptar"); } }