Я всегда перенаправляю на домашнюю панель в vuejs запрос на получение - PullRequest
0 голосов
/ 30 января 2020

Я следую инструкции по использованию laravel паспорта в laravel приложении. Здесь я использую

laravel-5.6.39

И в моем api.php маршруте у меня есть это:

Route::group(['prefix' => 'v2', 'middleware'=>'auth:api'], function() {
    Route::group(['prefix' => 'notifications'], function() {
        Route::get('index/{parameter}', 'NotificationApiController@index')->name('admin.notification');
    });
});

В то время как в VUEjs компоненте у меня есть

export default {
    data: function() {
        let lists = [];

        return {
            lists: lists
        }
    },

    methods: {
        getNotifications() {
            axios.get('/api/v2/notifications/index/parameter').then(response => {
                console.log(response);
                this.lists = response.data;
            })
            .catch(errors => {
                console.log(errors);
            });
        }
    },

    created: function() {
        this.getNotifications();
    }
}

Теперь я уже захожу в браузер .. Теперь посещаю шаблон на приборной панели

Из этого запроса в этом URI api/notifications/index/parameter

Я всегда перенаправляюсь на домашнюю приборную панель

Возвращение данных с домашней панели мониторинга, а не с контроллера

Вот фактический простой код с контроллера

public function index(Request $request, $parameter)
{
    $notifications = Notifications::with('user')
        ->orderBy('id', 'desc')
        ->get()
        ->toArray();

    $response = $this->transformer->transformCollection($notifications);

    return response()->json($response);
}

Ядро. php

protected $middlewareGroups = [
    'web' => [
        \App\Http\Middleware\EncryptCookies::class,
        \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
        \Illuminate\Session\Middleware\StartSession::class,
        \Illuminate\Session\Middleware\AuthenticateSession::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
        \App\Http\Middleware\VerifyCsrfToken::class,
        \Illuminate\Routing\Middleware\SubstituteBindings::class,
        \App\Http\Middleware\Language::class,
        \Laravel\Passport\Http\Middleware\CreateFreshApiToken::class,
    ],

    'api' => [
        'throttle:60,1',
        'bindings',
    ],
];

AuthServiceProvider . php

public function boot()
{
    $this->registerPolicies();

    Passport::routes();
    //
}

config / auth

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],

    'api' => [
        'driver' => 'passport',
        'provider' => 'users',
    ],
],

user. php model

class User extends Authenticatable
{
    use Notifiable;
    use EntrustUserTrait;
    use HasApiTokens;
    use Messagable;

Чего мне не хватает?

...