我正在为我的网站使用复制和粘贴功能,所以这是我的问题。当我直接从网页上复制图像时,它应能正常工作(代码上的第一个if语句),但是如果我尝试从自己的计算机复制图像,则会获得本地路径(如else语句中的路径) )
$scope.pasteImage = function(eventPaste)
{
$scope.uploading = true;
var promises = [];
var items = (eventPaste.clipboardData || eventPaste.originalEvent.clipboardData).items;
for (var i = 0; i < items.length; i++)
{
var blob = null;
if (eventPaste.originalEvent.clipboardData.items[i].type.indexOf("image") == 0 || eventPaste.originalEvent.clipboardData.items[i] == 0)
{
blob = eventPaste.originalEvent.clipboardData.items[i].getAsFile();
}
else
{
var file = new File("file:///home/oem/testabc/vembly/source/server/images/pregnant.png")
console.log(file)
}
}
console.log(eventPaste)
console.log(blob)
var files = [blob];
uploadService.uploadMultiple(files)
}
所以,我的问题是,是否有可能将该文件(其他陈述)转换为blob,以便我可以在我拥有的uploadMultiple(files)功能中使用它。
答案 0 :(得分:1)
否。
如果任何网站都可以使用JavaScript从您碰巧存在的系统上任何文件路径中读取数据,那将是一个巨大的安全问题。