Laravel API身份验证问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel API身份验证问题相关的知识,希望对你有一定的参考价值。

我有一条Laravel APi路线。我正在对内置令牌系统使用简单的API身份验证。

我的API路由如下所示

Route::group(['middleware' => ['subdomain_setup','auth:api'],'prefix'=>'v1'], function ()     
        Route::get('getCoupons', 'Api\CouponAPI@getCoupons');   
);

当我进入这条路线时它说

Unknown column 'api_token' in 'where clause' (SQL: select * from `users` where `api_token` = 

但是api_token在用户表中。我不知道为什么会收到此错误。

我的用户模型如下:

<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable

    use Notifiable;

    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = [
        'name', 'email', 'password'
    ];

    protected $guarded = ['id'];

    /**
     * The attributes that should be hidden for arrays.
     *
     * @var array
     */
    protected $hidden = [
        'password', 'remember_token', 'api_token'
    ];



    public static function boot()
    
        parent::boot();
        static::creating(function($user)
            $user->act_token=str_random(40);
        );
    

    public function confirmEmail()
    
        $this->verified = true;
        $this->act_token =  null;

        $this->save();
    

答案

查看以下链接以获取有效的解决方案。

https://medium.com/@razaqofficial/laravel-jwt-api-authentication-e49e1cf1ffe1?source=---------3------------------

以上是关于Laravel API身份验证问题的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 5 通过外部 API 对用户进行身份验证

没有身份验证的 Laravel 5.3 RESTFul API

通过 laravel API 使用 firebase 令牌身份验证

未经身份验证的 api laravel 子域

jwt api 身份验证如何工作(使用 dingo-laravel)

如何在 Laravel 中为 REST API 创建身份验证