【问题标题】:POST from external server issue on Laravel来自 Laravel 上的外部服务器问题的 POST
【发布时间】:2014-05-17 10:09:19
【问题描述】:

我正在从外部服务器向我的 Laravel 应用发帖,它在 app/filters/policy.php:Illuminate\Session\TokenMismatchException 上抛出此异常。

这是我的app/filters/policy.php

Route::filter('csrf', function()
{
    $token = Request::ajax() ? Request::header('X-CSRF-Token') : Input::get('_token');

    if (Session::token() != $token)
    {
        throw new Illuminate\Session\TokenMismatchException;
    }
});

这是我的app/route.php

Route::any('webservice', ['uses' => 'WebserverController@postWebservice']);

我认为是因为CSRF过滤器应用于所有路由,但我不知道如何将其禁用到/webservice

我将不胜感激。

【问题讨论】:

    标签: post laravel csrf


    【解决方案1】:

    也许你可以试试这样的:

    if(Request::url() != 'http://example.com//webservice') {
        $token = Request::ajax() ? Request::header('X-CSRF-Token') : Input::get('_token')
        if (Session::token() != $token) {
            throw new Illuminate\Session\TokenMismatchException;
        }
    }
    

    【讨论】:

    • 我认为这不是最好的方法,但我找不到任何其他方法。谢谢(:
    猜你喜欢
    • 2016-12-29
    • 2018-02-13
    • 1970-01-01
    • 2020-09-27
    • 2018-02-04
    • 2019-01-19
    • 2023-03-09
    • 2017-09-03
    • 1970-01-01
    相关资源
    最近更新 更多