Troca de mensagens mobile Ionic e Laravel 5.6 | Fórum | School of Net

Deseja poder participar de nosso fórum e tirar todas as suas dúvidas?
Clique aqui e assine nosso plano de acesso ilimitado. Saiba mais.

por Ricardo

1 ano, 9 meses atrás Ricardo

Troca de mensagens mobile Ionic e Laravel 5.6

Prezados Tenho uma aplicação mobile que funciona perfeitamente bem porém estou com dúvidas em uma troca de mensagens entre cliente (angular + ionic) e servidor. ``` Arquivo Api.php do laravel Route::resources([ 'NomedaRota' => 'NomedoMeuController' ]); ``` No controller do laravel tenho a estrutura básica retornando destar forma: ``` public function index() { try { $MinhaVariavel = DB::select('Meu Select'); return response()->json($MinhaVariavel); catch (Exception $e) { echo 'Exceção capturada: ', $e->getMessage(), "\n"; } } ``` Sempre que no angular envio um get, ele cai no index. Quando envio um post ele cai no store que tem uma estrutura parecida com a do index no controller do laravel. Minha dúvida é a seguinte. Preciso passar um parâmetro para meu select e imediatamente devolver o resultado a minha aplicação mobile. Só que pra fazer isso entendi que só posso fazer usando post. Não sei se vocês concordam. E ao fazer o post passando o parâmetro, o servidor retorna erro 500 e não devolver a minha aplicação o resultado do select. Fui nos logs do laravel... ele retorna uma mensagem assim ao dar o erro 500: ``` [2021-03-07 05:12:18] production.ERROR: Undefined index: tp_id {"userId":1,"email":"[email protected]","exception":"[object] (Erro$ [stacktrace] ``` No angular invoco um método que contém o seguinte conteúdo quando não preciso me importar em enviar um parâmetro do app para o server: ``` getPossibilidades(){ return this.http.get(`${this.url}/possibilidades`, this.httpOptions) .pipe( catchError(this.handleError) ) } ``` Imagino que se o método acima precisar enviar um parâmetro para o server, deveria ser da seguinte forma pois quando mando salvar alguma coisa no server a partir da aplicação faço assim e funciona. Só que dessa vez eu quero passar o parâmetro e receber de volta o resultado: ``` Possibilidades(tpDoc){ return this.http.post(`${this.url}/possibilidades`, tpDoc, this.httpOptions) .pipe( catchError(this.handleError) ) } ``` Por gentileza me ajudem a entender melhor essa parte de comunicação por post quando tudo indica que eu deveria fazer um get, mas com get não vejo como passar parâmetro...

6 Respostas