Ajax вызывает ошибку до запуска контроллера - PullRequest
0 голосов
/ 30 октября 2018

У меня есть вызов ajax, который попадает в блок ошибок еще до запуска контроллера. Странно то, что иногда (после нескольких запросов) он работает успешно, но не сохраняет куки в контроллере.

Я думаю, это может быть вызов ajax или какая-то ошибка разрешения. AJAX CALL:

$('#loginAWGPE').on('click', function () {
    var cpfLogin = $('#cpfValidacao').val().replace(/[^\d]+/g, '');
    console.log(cpfLogin);
    console.log(urlOrigem + appPath + "Login/validaCPF");
    $.ajax({
        type: 'POST',
        url: urlOrigem + appPath + "Login/validaCPF",
        datatype: String,
        data: {
            cpf: cpfLogin
        },
        success: function (teste) {
            console.log('dataS: ' + teste);
            if (teste = true) {
                window.location = urlOrigem + appPath + "ProjetoEletrico/Index";
            } else {
                alert('CPF não cadastrado na Agência Virtual!');
            }
        },
        error: function (teste2) {
            console.log('dataE: ' + teste2);
            alert('Erro na execusão');
        }
    });
});

------- CONTROLLER:

public JsonResult validaCPF(String cpf)
    {
        if (String.IsNullOrEmpty(cpf))
        {
            Response.StatusCode = (int)HttpStatusCode.Unauthorized;
            return Json(false);
        }
        WebAPIPArameter id = new WebAPIPArameter();
        id.ParameterName = "id";
        id.ParameterValue = cpf;
        List<WebAPIPArameter> list = new List<WebAPIPArameter>();
        list.Add(id);
        Usuario userInfo = (Usuario)apiClientSistema.GetItem<Usuario>(serviceNameUserInfo, list);
        if (userInfo == null)
        {
            return Json(false);
        }
        else
        {
            CultureInfo cult = new CultureInfo("pt-BR");
            String dataStr = userInfo.DTH_ULTIMO_ACESSO.ToString("dd/MM/yyyy HH:mm:ss", cult);
            HttpCookie cook = new HttpCookie("UserInfo");
            cook["cpfCnpj"] = userInfo.NUM_CPF_CNPJ_CLIENTE.ToString();
            cook["nomeCompleto"] = userInfo.NOM_CLIENTE;
            cook["dataAcesso"] = dataStr;
            cook["email"] = userInfo.END_EMAIL;
            cook.Expires = DateTime.Now.AddHours(4);
            Response.Cookies.Add(cook);
            //cookie de autenticacao
            FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
                                            1,
                                            cpf,  // Id do usuário é muito importante
                                            DateTime.Now,
                                            DateTime.Now.AddHours(4),
                                            true,   // Se você deixar true, o cookie ficará no PC do usuário
                                            "");
            HttpCookie cookieAuth = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(authTicket));
            Response.Cookies.Add(cookieAuth);
        }
        Response.Redirect("~/ProjetoEletrico/Index");
        return Json(true);
    }

1 Ответ

0 голосов
/ 30 октября 2018

Я понял это. Это была глупая ошибка .... Я забыл «отправить» в моей кнопке формы, и я также вызов ajax.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...