javascript - 将文件保存在 angular.js 的特定文件夹中
问题描述
if (exportdata != null) {
var blob = new Blob([s2ab(exportdata.filedata)], {
type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
});
//saveAs provided by FileSaver.js
saveAs(blob, exportdata.filename);
framework.displayAlert('ERRORS.SUCCESS', 'Data downloaded successfully');
} else {
framework.displayAlert('ERRORS.ERROR', data.error);
}
function s2ab(s) {
var buf = new ArrayBuffer(s.length);
var view = new Uint8Array(buf);
for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
return buf;
}
在saveAs()
我已经给出了文件类型和文件名。它将以给定的文件名保存在下载文件夹中。但我想把它保存在D://Reports/sample/
这条路上。有什么选择可以实现这一目标吗?
解决方案
这是无法做到的。出于明显的安全原因,浏览器不允许仅由用户将文件保存到特定位置(通过右键单击 -> 另存为)它不允许您设置目标文件夹。
否则想象一下,任何站点都可以将文件保存在您计算机上任何它想要的位置。
如果您需要将 Blob 保存到特定位置,则必须在服务器端进行。将 Blob 上传到您的服务器,然后您就可以将其保存到您想要的任何位置。
推荐阅读
- null - Handlebars php (LightnCandy\LightnCandy) : 每个键值对 NULL
- docker - SED 无法处理在 Dockerfile 中使用 COPY 命令复制的文件
- python - 为什么毒药在 install_command 期间看不到环境变量?
- azure-devops - 如何从拉取请求中完全保护/阻止 Azure Devops 中的分支
- javascript - 如何在 React 中将数组作为道具传递而不转换为字符串
- python - “conda 更新 conda”与“conda 更新 --all”
- ios - 无法从 App Store 获取待售产品
- spring-boot - SpringJUnit4ClassRunner 测试的配置与 SpringBootTest 冲突
- jasper-reports - Jasperreports:如何设置轴间隔?
- visual-studio-code - 使用特定节点版本运行 git pre-commit hook