Laravel Spark 6.0 Ajax请求未经身份验证

时间:2018-05-09 19:13:20

标签: laravel-5.6 laravel-spark

我正在使用vanilla Spark 6.0安装来构建应用程序。我可以登录,访问Kiosk并点击。

我创建了一个带有表单的新卡部分,并按照documentation的指示使用SparkForm对象;但是每个请求都返回unauthenticated,因此我必须重新登录。

我无法获得ajax请求进行身份验证。我创建了一个单独的adminApi来处理受auth / dev / web中间件保护的admin ajax请求。

任何想法/指针都非常有用。

相关代码:

RouteServiceProvider:

public function map(Router $router)
{
    $this->mapWebRoutes($router);

    $this->mapApiRoutes($router);

    $this->mapAdminApiRoutes($router);

    //
}
...
protected function mapAdminApiRoutes(Router $router)
{
    $router->group([
        'namespace' => $this->namespace,
        'middleware' => ['dev', 'auth', 'web'],
        'prefix' => 'admin/api',
    ], function ($router) {
        require base_path('routes/adminApi.php');
    });
}

路由/ adminApi.php

Route::resource('/insurers', 'Admin\InsurersController');

vue组件 - insurers.js

var base = require('kiosk/users');

Vue.component('spark-kiosk-insurers', {
    mixins: [base],
    data: function() {
        return {
            showingInsurerProfile: false,
            form: new SparkForm({
                name: '',
                email:'',
                logo:''
            })
        }
    },
    props: {
        insurer: {}
    },
    methods: {
        search: function() {

        },
        create: function() {
            Spark.post('/admin/api/insurers', this.form)
            .then(response => {
                console.log(response);
            });
        },

    }
});

1 个答案:

答案 0 :(得分:0)

将CSRF令牌添加到

这样的表单中
internal class WhatToMineCalculatorResponse
{
    readonly string _name;

    public WhatToMineCalculatorResponse(string name)
    {
        this._name = name;
    }

    // I want the key set in this field
    public string Name { get { return _name; } }

    // Remainder of class unchanged
}

然后将以下内容添加到您的请求中:

<meta name="csrf-token" content="{{ csrf_token() }}">

}