Ste*_*eve 2 php jquery jquery-plugins laravel laravel-5.3
我有这个HTML:
<input id="input-id" type="file" accept=".mp3, .mp4" name="file" class="form-control"><br>
<input type="hidden" id="getfilename" name="uploadedfile" value="">
Run Code Online (Sandbox Code Playgroud)
这个jquery插件上传文件:
$("#input-id").fileinput({
maxFileSize: 264000,
uploadUrl: "{{url('/rate/uploadfile')}}",
uploadAsync: true,
allowedFileExtensions: ['mp3', 'mp4', 'mpeg', 'flv'],
maxFileCount: 1,
showUpload: true,
dropZoneEnabled: false
});
Run Code Online (Sandbox Code Playgroud)
Web中间件组下的路由:
Route::post('rate/uploadfile', 'RateController@uploadfile');
Run Code Online (Sandbox Code Playgroud)
每当我尝试上传文件时,我都会遇到熟悉的错误:
VerifyCsrfToken.php中的TokenMismatchException
首先在表单上添加此代码,
<input type="hidden" id="csrf_token" name="_token" value="{{ csrf_token() }}">然后使用laravel的csrf_token()函数在表单上添加csrf标记字段.然后在你的脚本上添加它
$("#input-id").fileinput({
maxFileSize: 264000,
uploadUrl: "{{url('/rate/uploadfile')}}",
uploadAsync: true,
uploadExtraData:{'_token':$('#csrf_token').val()
allowedFileExtensions: ['mp3', 'mp4', 'mpeg', 'flv'],
maxFileCount: 1,
showUpload: true,
dropZoneEnabled: false
});
Run Code Online (Sandbox Code Playgroud)
如果你使用http://plugins.krajee.com/file-input这个插件进行文件上传,那么uploadExtraData:{'_token':$("#csrf_token").val()},这行应该添加csrf标记作为ajax请求的额外post参数.希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
2806 次 |
| 最近记录: |