Laravel 5,表单,VerifyCsrfToken.php 第 46 行中的 TokenMismatchException
Laravel 5, Forms, TokenMismatchException in VerifyCsrfToken.php line 46
我在提交表单时总是收到 "TokenMismatchException in VerifyCsrfToken.php line 46" 错误。
这是其中一种形式:
{!! Form::model($product, array('url' => 'product/'.$product->id, 'class' => 'form', 'method' => 'PATCH')) !!}
<div class="form-group">
{!! Form::textarea('note', $product->note,
array('class'=>'form-control', 'id'=>'product-note', 'placeholder'=>Lang::get('customtranslation.form_placeholder_note'), 'rows'=>3)) !!}
<br />
<span class="btn btn-link" id="remove-note" role="button"><i class="fa fa-times"></i> {{ Lang::get('customtranslation.button_txt_reset_note') }}</span>
</div>
<div class="form-group">
{!! Form::submit(Lang::get('customtranslation.button_txt_finish_edit_product'), array('class'=>'btn btn-success')) !!}
</div>
<div class="form-group">
<!-- Custom tags -->
{!! Form::label('additional-tags', Lang::get('customtranslation.form_edit_label_additional_tags')) !!}
{!! Form::text('additional-tags','', array('id'=>'additional-tags', 'data-role'=>'tagsinput')) !!}
</div>
{!! Form::close() !!}
名称为“_token”的输入元素按预期生成和设置。
奇怪的是,这种情况只发生在 Internet Explorer (IE11) 中。 Chrome 和 FF 顺利提交。
还有其他人有这个问题和可能的解决方案吗?
可能是您没有在对服务器的请求中设置 _token
参数,或者您把它放在了不正确的地方。
Internet Explorer 拒绝来自带有下划线的域的会话。这是一个已知的问题。
请看这里:Issue with Session and Cookie in Internet Explorer for websites containing underscore
还有:
http://blogs.msdn.com/b/ieinternals/archive/2009/08/20/wininet-ie-cookie-internals-faq.aspx
我在提交表单时总是收到 "TokenMismatchException in VerifyCsrfToken.php line 46" 错误。
这是其中一种形式:
{!! Form::model($product, array('url' => 'product/'.$product->id, 'class' => 'form', 'method' => 'PATCH')) !!}
<div class="form-group">
{!! Form::textarea('note', $product->note,
array('class'=>'form-control', 'id'=>'product-note', 'placeholder'=>Lang::get('customtranslation.form_placeholder_note'), 'rows'=>3)) !!}
<br />
<span class="btn btn-link" id="remove-note" role="button"><i class="fa fa-times"></i> {{ Lang::get('customtranslation.button_txt_reset_note') }}</span>
</div>
<div class="form-group">
{!! Form::submit(Lang::get('customtranslation.button_txt_finish_edit_product'), array('class'=>'btn btn-success')) !!}
</div>
<div class="form-group">
<!-- Custom tags -->
{!! Form::label('additional-tags', Lang::get('customtranslation.form_edit_label_additional_tags')) !!}
{!! Form::text('additional-tags','', array('id'=>'additional-tags', 'data-role'=>'tagsinput')) !!}
</div>
{!! Form::close() !!}
名称为“_token”的输入元素按预期生成和设置。
奇怪的是,这种情况只发生在 Internet Explorer (IE11) 中。 Chrome 和 FF 顺利提交。
还有其他人有这个问题和可能的解决方案吗?
可能是您没有在对服务器的请求中设置 _token
参数,或者您把它放在了不正确的地方。
Internet Explorer 拒绝来自带有下划线的域的会话。这是一个已知的问题。
请看这里:Issue with Session and Cookie in Internet Explorer for websites containing underscore
还有: http://blogs.msdn.com/b/ieinternals/archive/2009/08/20/wininet-ie-cookie-internals-faq.aspx