My ajax request does not work when I put it on the web route, only in the api

Asked

Viewed 81 times

-1

Routes:

//Rotas para clientes
Route::get('/cliente','ControllerCliente@indexview');
Route::resource('/clientes','ControllerCliente');

Controller:

 public function store(Request $request)
 {
        //Função para saçvar clientes novos.
        $cliente = new Cliente();
        $cliente->nome = $request->input('nomeCliente');
        $cliente->idade = $request->input('idadeCliente');
        $cliente->datanasc = $request->input('aniversarioCliente');
        $cliente->telefone = $request->input('telefoneCliente');
        $cliente->email = $request->input('emailCliente');
        $cliente->save();
        return json_encode($cliente);
}

Way to Insert:

//Função para salvar o cliente 
function criarnovoCliente() {
    console.log('entrou na função');
    client = {
        nomeCliente: $('#nomeCliente').val(),
        emailCliente: $('#emailCliente').val(),
        telefoneCliente: $('#telefoneCliente').val(),
        aniversarioCliente: $('#aniversarioCliente').val(),
        idadeCliente: $('#idadeCliente').val(),
    };
    $.ajax({
        type: "POST",
        url: '/clientes',
        context: this,
        data: client,
        dataType: 'json',
        _token: '{{csrf_token()}}',
        success: function(data) {
            console.log("entrou no sucess");
            if (data['errors'] != undefined) {
                erros = data['errors'];
                console.log(erros);
            } else {
                /*usuario = JSON.parse(data);
                linha = montarLinha(usuario);
                $('#tabelaUsuario>tbody').append(linha);*/
                console.log("usuário inserido com sucesso");
            }
        },
        error: function(data, textStatus, errorThrown) {
            console.log(data);
            console.log("nem entrou no sucess");
        },
    });

}

Page form:

<form id="FormCadastroCliente" method="post">
                       @csrf
                    <div class="form-group">
                        <label for="exampleInputEmail1">Nome</label>
                        <input type="text" class="form-control" id="nomeCliente"  name="nomeCliente" placeholder="Digite o nome do cliente">
                    </div>
                    <div class="form-group">
                        <label for="exampleInputPassword1">Email de Contato</label>
                        <input type="email" class="form-control" id="emailCliente" name="emailCliente" placeholder="Digite o email do cliente">
                    </div>
                    <div class="form-group">
                        <label for="exampleInputPassword1">Telefone de Contato</label>
                        <input type="text" class="form-control" id="telefoneCliente" name="telefoneCliente" placeholder="(31) 99999-9999">
                    </div>
                    <div class="form-group">
                        <label for="exampleInputPassword1">Data de aniversário</label>
                        <input type="date" class="form-control" id="aniversarioCliente" name="aniversarioCliente">
                    </div>
                    <div class="form-group">
                        <label for="exampleInputPassword1">Idade</label>
                        <input type="number" class="form-control" id="idadeCliente" name="idadeCliente">
                    </div>
                    <button type="submit" class="btn btn-primary" >Cadastrar</button>
                    <button type="button" class="btn btn-secondary" data-dismiss="modal" style="margin-left:10px;">Cancelar</button>
                    <input type="hidden" name="_token" value="{{csrf_token()}}" />
                </form>

1 answer

0

Pass the _token inside the date parameter

function criarnovoCliente() {
    console.log('entrou na função');
    client = {
        _token: $('#token').val(),
        nomeCliente: $('#nomeCliente').val(),
        emailCliente: $('#emailCliente').val(),
        telefoneCliente: $('#telefoneCliente').val(),
        aniversarioCliente: $('#aniversarioCliente').val(),
        idadeCliente: $('#idadeCliente').val(),
    };
    $.ajax({
        type: "POST",
        url: '/clientes',
        context: this,
        data: client,
        dataType: 'json',
        success: function(data) {
            console.log("entrou no sucess");
            if (data['errors'] != undefined) {
                erros = data['errors'];
                console.log(erros);
            } else {
                /*usuario = JSON.parse(data);
                linha = montarLinha(usuario);
                $('#tabelaUsuario>tbody').append(linha);*/
                console.log("usuário inserido com sucesso");
            }
        },
        error: function(data, textStatus, errorThrown) {
            console.log(data);
            console.log("nem entrou no sucess");
        },
    });

}

Browser other questions tagged

You are not signed in. Login or sign up in order to post.