【发布时间】:2017-03-12 11:55:16
【问题描述】:
我正在尝试从 dropzone 中的存储文件夹中预加载图像。这就是我所拥有的:
AJAX
$.ajax({
url: "suspect_images",
data: { id: $('input[name=b_id]').val(), _token: $('input[name=_token]').val()},
dataType: 'json',
type: 'GET',
success: function (data) {
$.each(data.images, function (key, value) {
var file = {name: value.original, size: value.size};
dropZone.options.addedfile.call(dropZone, file);
dropZone.options.thumbnail.call(dropZone, file, value.path + value.server);
dropZone.emit("complete", file);
dropZone.files.push(file);
});
},
error: function (data) {
}
}, "json")
控制器
$images = Mugshots::select("AccusedID", "FileName", "OriginalFileName")->where("AccusedID", "=", $request->input('id'))->get();
$imageAnswer = [];
foreach ($images as $image) {
$imageAnswer[] = [
'original' => $image->OriginalFileName,
'server' => $image->FileName,
'size' => File::size(storage_path() . '/uploads/images/suspects/' . $request->input('id') . '/full_size/' . $image->FileName),
'path' => storage_path() . '/uploads/images/suspects/' . $request->input('id') . '/full_size/'
];
}
return response()->json([
'images' => $imageAnswer
]);
返回
Not allowed to load local resource: file:///C:/xampp/htdocs/IMS/storage/uploads/images/suspects/2/full_size/file.jpg
现在,如果我的图像位于公共文件夹中,这可能会起作用。但出于安全原因,我必须将其存储在存储文件夹中。当我粘贴 url 但不能在 javascript 中时,我可以通过浏览器访问文件。我认为这可能是因为权限。如何从存储文件夹中加载文件并将其显示在 dropzone 上?
我问的是把它加载到dropzone而不是image标签。
【问题讨论】:
-
@hassan 我问的是 dropzone 不只是将它加载到图像标签中。
-
我认为这是同样的问题,您的浏览器正在尝试从硬盘驱动器加载资源,例如,对于 dropzone,您可能需要从 tmp 目录加载图像。
-
@hassan 我很想知道我应该怎么做。
-
对不起,我刚醒了关于 dropzone B) 的问题。但是,我认为这会有所帮助,github.com/enyo/dropzone/wiki/…
标签: javascript php laravel-5.2