为什么laravel 5 csrf_token值总是为空?
我如何获得该令牌值?
我试过了,
{!! csrf_token !!} , {{ csrf_token }} and
{{ Form::open() }} ....{{ Form::close() }}
我的输出
<input type="hidden" name="_token"></input>
答案 0 :(得分:3)
这是因为您没有使用网络组中间件,Laravel非常聪明,知道如果您不使用该组,则不需要令牌。
尝试移动你在Route :: group中的路线(['middleware'=&gt;'web'] ...并告诉我们:)
消息来源:不久前我犯了同样的错误。
答案 1 :(得分:0)
试试php artisan generate:key
?如果无效,请尝试在connsole上使用def PFTpercentChange(request):
conn = psycopg2.connect(dbname="geodjango",host='localhost',user='postgres', password='postgres', port=5433)
cur=conn.cursor()
cur.execute("SELECT COUNT(species) FROM pft_potential_pft")
count_pot=cur.fetchall()
cur.execute("select count(*) from pft_existing_data_apft e inner join pft_potential_pft p on e.species= p.species ")
count_actual=cur.fetchall()
cur.executemany('UPDATE "PFTpercentchange" SET "PFTs_likely_to_change" = ( %s ) where id=1',count_pot)
conn.commit()
cur.executemany('UPDATE "PFTpercentchange" SET "PFTs_unchanged" = ( %s ) where id=1',count_actual)
conn.commit()
myData = {}
myData['PFTs_likely_to_change'] = count_pot
myData['PFTs_likely_to_remain_unchanged'] = count_actual
json_string = json.dumps(myData)
return JsonResponse(myData, safe=False)
答案 2 :(得分:0)
感谢所有人。
最后我找到了解决方案。
全新安装:
Route::get('foo', function () {
return csrf_token(); // null
});
使用此:
Route::group(['middleware' => 'web'], function () {
Route::get('bar', function () {
return csrf_token(); // works
});
});
它的工作。
答案 3 :(得分:0)
我偶然发现这个帖子,当我发布时,下午突然体验到“由于不活动而导致页面过期。” 在进行“查看源”时,所有令牌都存在并且正确无误。 只有我包括:
$("#editaddTarget input").each(function () {
$(this).val("");
});
当我发布模态时被解雇了。所以我今天学到了一些东西,并且不会回过头来找我这个新手的5个小时!