Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果用户未登录,AJAX请求无响应-Laravel_Php_Jquery_Ajax_Laravel_Laravel 5 - Fatal编程技术网

Php 如果用户未登录,AJAX请求无响应-Laravel

Php 如果用户未登录,AJAX请求无响应-Laravel,php,jquery,ajax,laravel,laravel-5,Php,Jquery,Ajax,Laravel,Laravel 5,我有一个在Laravel5.5上运行的web应用程序,我需要专门使用ajax创建一个购物车(我有理由) 用户登录后,所有操作都会顺利运行。当用户未登录时,我得到一个空响应 路线: Route::post('/shop/add2', 'ShopController@addToCart')->name('add2cart'); ShopController看起来像: <?php class ShopController extends Controller {

我有一个在Laravel5.5上运行的web应用程序,我需要专门使用ajax创建一个购物车(我有理由)

用户登录后,所有操作都会顺利运行。当用户未登录时,我得到一个空响应

路线:

Route::post('/shop/add2', 'ShopController@addToCart')->name('add2cart');
ShopController看起来像:

<?php 

    class ShopController extends Controller
    {

      public static function addToCart(){

       $message = "Some message";

       return response()->json(["message"=>$message]);
      }
    }
?>

我尽我所能得到了419状态码。我知道,对吧

如果您不介意每个人都可以访问此函数,您可以在控制器的构造函数中为中间件添加一个异常:

public function __construct()
{
    $this->middleware('auth', ['except' => ['addToCart']]);
}

嗯,我有一个强大的天神,代码是419。。。而且不是一个好的。 我不得不调试了半天,因为facebook的webhook的一条路线上丢失了一个Csrf令牌。也许你的情况也是如此

class VerifyCsrfToken extends Middleware
{
    const FACEBOOK_ROUTE = 'facebook_hook';

    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        self::FACEBOOK_ROUTE,
        self::FACEBOOK_ROUTE . '/*',
        'upload',
        'upload/*',
    ];
我的上传也是如此,这也是由第三方ajax插件完成的


干杯

谢谢你的片段。由于某种原因,这对我不起作用,我进行了更多的挖掘,尽管这需要我编辑App\Http\MIdleware\VerifyCsrToken.php文件grrrrr,这也是我发现的。我在下面的评论中作出了回答。
class VerifyCsrfToken extends Middleware
{
    const FACEBOOK_ROUTE = 'facebook_hook';

    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        self::FACEBOOK_ROUTE,
        self::FACEBOOK_ROUTE . '/*',
        'upload',
        'upload/*',
    ];