Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Call to undefined function App\Http\Controllers\validate()

Estou usando a versão Lumen (8.2.3) (Laravel Components ^8.0) e estou tendo esse problema com os códigos do curso.

Creio que preciso colocar um Use mas não sei o caminho da classe quu contém o validate.

alguém consegue me dar essa luz?

abraço.


namespace App\Http\Controllers;

use Firebase\JWT\JWT;
use Illuminate\Http\Request;
use Laravel\Lumen\Routing\Controller as BaseController;

class TokenController extends Controller{

    public function gerarToken( Request $req){

        $this_>validate(
            $req, [
                'email' => 'required|email',
                'password' => 'required'
                ]
        );
        $usuario = User::where('email', $req->email);


        if( is_null( $usuario) || Hash::check($req->password, $usuario->password) ){
            return response()->json('', 401);
        }


        $token = JWT::encode( 
            ['email' => $req->user], 
            env('JWT_KEY')
        );

        return [
            'acccess_token' => $token
        ];
    }
1 resposta
solução!

Foi erro meu, percebi somente depois de um café! hahaha

Fiz isso na chamada do validate

$this_>validate(
            $req, [
                'email' => 'required|email',
                'password' => 'required'
                ]
        );

Ao invés disso:

$this->validate(
            $req, [
                'email' => 'required|email',
                'password' => 'required'
                ]
        );

Resolvido !

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software