Pereiti prie turinio

[Solved][Laravel5] TokenMismatchException


Rekomenduojami pranešimai

Sveiki. Turiu formą:

<form method='post' action='{{ URL::to("shoutbox") }}'>
<div class='form-group'>
	{{ csrf_field() }}
	<textarea class='form-control' name='shout' id='shout' rows='4' placeholder='Šaukinio tekstas*' maxlength='500'></textarea>
	<button type='submit' class='button shout' id='shoutbox'>Šaukti</button>
</div>
</form>

 

Paspaudus mygtuką gaunu error'ą:

TokenMismatchException in VerifyCsrfToken.php line 67


in VerifyCsrfToken.php line 67
at VerifyCsrfToken->handle(object(Request), object(Closure)) in VerifyCsrfToken.php line 17
at VerifyCsrfToken->handle(object(Request), object(Closure))
at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 136
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ShareErrorsFromSession.php line 49
at ShareErrorsFromSession->handle(object(Request), object(Closure))
at call_user_func_array(array(object(ShareErrorsFromSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 136
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in StartSession.php line 62
at StartSession->handle(object(Request), object(Closure))
at call_user_func_array(array(object(StartSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 136
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure))
at call_user_func_array(array(object(AddQueuedCookiesToResponse), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 136
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in EncryptCookies.php line 59
at EncryptCookies->handle(object(Request), object(Closure))
at call_user_func_array(array(object(EncryptCookies), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 136
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32
at Pipeline->Illuminate\Routing\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
at Pipeline->then(object(Closure)) in Router.php line 726
at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 699
at Router->dispatchToRoute(object(Request)) in Router.php line 675
at Router->dispatch(object(Request)) in Kernel.php line 246
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 52
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 44
at CheckForMaintenanceMode->handle(object(Request), object(Closure))
at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 136
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32
at Pipeline->Illuminate\Routing\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
at Pipeline->then(object(Closure)) in Kernel.php line 132
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 99
at Kernel->handle(object(Request)) in index.php line 54

 

Route eilutė:

Route::resource('shoutbox', 'ShoutboxController');

 

 

Controller'io store:

   public function store(Request $request) {
       return var_dump($request->all());
   }

Redagavo NamelessSpy
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Pradziai paziurek per inspectoriu ar tikrai ideda hidden inputa su tokenu i forma.

 

Jeigu yra, tai bandyk iwrappinti routa i grupe su 'web' middleware:

 

Route::group(['middleware' => 'web'], function()
{
   Route::resource('shoutbox', 'ShoutboxController');
});

 

arba gali tiesiai kontrollerio konstruktoriuj:

$this->middleware('web')

Redagavo mogohax
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Pradziai paziurek per inspectoriu ar tikrai ideda hidden inputa su tokenu i forma.

 

Jeigu yra, tai bandyk iwrappinti routa i grupe su 'web' middleware:

 

Route::group(['middleware' => 'web'], function()
{
   Route::resource('shoutbox', 'ShoutboxController');
});

 

arba gali tiesiai kontrollerio konstruktoriuj:

$this->middleware('web')

Galima plačiau apie inspectorių? Pirmą kartą girdžiu.

 

Bandyk:

<input type="hidden" name="_token" value="{{ csrf_token() }}" />

 

Bandžiau, nepadeda.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Pabandyk tada prie <head> tagų prirašyt šitą:

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

 

Irgi bandžiau, nepadėjo.

 

Bandžiau debug'int ir supratau, kad viskas dėl to, nes view failas kviečiamas naudojant modelį (static function). Tai klausimas kaip man sutvarkyt viską, nes nelabai įsvaizduoju sprendimo.

Nuoroda į pranešimą
Dalintis kituose puslapiuose
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Shoutbox extends Model
{
   protected $table = "shoutbox";

   public static function block() {
   	$url = \URL::to('shoutbox');
   	$shouts = \App\Shoutbox::all();
   	return view('sidebar')
   		->with('url', $url)
   		->with('shouts', $shouts);
   }
}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Shoutbox extends Model
{
   protected $table = "shoutbox";

   public static function block() {
   	$url = \URL::to('shoutbox');
   	$shouts = \App\Shoutbox::all();
   	return view('sidebar')
   		->with('url', $url)
   		->with('shouts', $shouts);
   }
}

 

aš gerai matau? iš model'io tu gražini view'sa? wtf kas čia per dviračio išradinėjimas

Nuoroda į pranešimą
Dalintis kituose puslapiuose
Svečias
Ši tema yra užrakinta ir joje nebegalima rašyti naujų pranešimų.
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Sukurti naują...