2016-11-03 2 views
0

Im пытается создать загрузку img с помощью ajax. Я использую плагин https://github.com/Vinelab/mr-uploader, и я получаю CSRFTokenMismatchException. Iv'e решается вопрос перед добавлением маршрута до $ execpet на verifyCsrfTokenMismatchException, несмотря на исключение маршрута

class VerifyCsrfToken extends BaseVerifier 
{ 
    /** 
    * The URIs that should be excluded from CSRF verification. 
    * 
    * @var array 
    */ 
    protected $except = [ 
     '/admin/upload' 
    ]; 

} 

С Решая задачу в первый раз, я уже облицован весь проект обратно Laravel 5 из Laravel 5.1 (длинной истории, я 've должен был это сделать) теперь проблема появляется agian. при попытке отправить почтовый запрос на этот маршрут я получаю «TokenMismatchException».

+1

делить ваш код ajax? а также лезвие. – C2486

+0

код ajax является частью плагина/библиотеки, о которой я упоминал. – asafg8

+0

проблема в том, что даже если я пытаюсь отправить сообщение с открытым сообщением, я получаю эту ошибку – asafg8

ответ

1

Метод 1: Отключение защиты от CSRF

Добавьте следующий код в VerifyCsrfToken.php

Этот маршрут будет проигнорировано от проверки CSRF токен ..

public function handle($request, Closure $next) 
    { 
     //disable CSRF check on following routes 
     $skip = array(
        '/admin/upload', 
        ); 

     foreach ($skip as $key => $route) { 
      //skip csrf check on route 
      if($request->is($route)){ 
       return parent::addCookieToResponse($request, $next($request)); 
      } 
     } 
     return parent::handle($request, $next); 
    } 

метод 2: Добавить CSRF TOKEN в ajax-запросе

var token  = "{{ csrf_token() }}"; 

    $.ajax({ 
     type : "POST", 
     url : "/admin/upload", 
     data : {_token:token}, 


}); 
+0

добавьте ее поставщику или в приложение/http/verifyCSRFToken? – asafg8

+0

не пропускать, предоставлять токен csrf с помощью ajax-запроса, его небезопасно ограничивать загрузкой. – C2486

+0

добавить в 'app/Http/Middleware/verifyCSRFToken.php' – Jaimin

Смежные вопросы