CKeditor 5无法在laravel中上传图像



我使用ckeditor在laravel中上传图像它工作得很好,并上传图像到文件夹,但在前面它给出了一个警告错误&;cannot upload image:imagename&;并从编辑器

中删除图像Imageuploadcontroller:

public function storeImage(Request $request)
{
if ($request->hasFile('upload')) {
$originName = $request->file('upload')->getClientOriginalName();
$fileName = pathinfo($originName, PATHINFO_FILENAME);
$extension = $request->file('upload')->getClientOriginalExtension();
$fileName = $fileName . '_' . time() . '.' . $extension;

$request->file('upload')->move(public_path('media'), $fileName);

$url = asset('media/' . $fileName);

return response()->json(['fileName' => $fileName, 'uploaded'=> true, 'url' => $url]);
}
}

脚本:

<script>
ClassicEditor
.create( document.querySelector( '#longdescription' ), {
ckfinder: {
uploadUrl: "{{route('image.upload').'?_token='.csrf_token()}}",
}

})
.then( editor => {
console.log( editor );
} )
.catch( error => {
console.error( error );
} );
</script>

您可以查看您的开发人员工具并到网络查看请求是否正确发送。我也犯了同样的错误这里显示。

在我的情况下,错误是在以下代码中的上传URL中缺少=:

ckfinder: {
uploadUrl: `{{ route('upload.image').'?_token'.csrf_token() }}`
}

因此,当我在_token键后添加=时,修改后的代码看起来像这样:

ckfinder: {
uploadUrl: `{{ route('upload.image').'?_token='.csrf_token() }}`
}

最新更新