file - 对于非 ASCII 字符的内容,Jhipster dataUtils.downloadFile 出错
问题描述
我一直在尝试从角度使用内置dataUtils.downloadFile
功能。JHipster
这接受内容字符串和内容类型,并让用户将内容下载为文件。
我注意到,它可以轻松处理包含ASCII
字符的内容。但是,它无法处理UTF-8
字符集。
这是我得到的错误:
无法在“窗口”上执行“atob”
我错过了什么还是有办法解决它?
目前我必须通过我的文件来替换所有UTF-8
唯一的字符,ASCII
但这会很乏味。
谢谢阅读..
编辑:下面是字段定义。
{
"fieldName": "troubleshooting",
"fieldType": "byte[]",
"fieldTypeBlobContent": "text"
}
这是尝试将字符串转换为base64然后下载的角度代码。问题不在于 base 64 编码。没事。问题在于内容格式。如果内容仅包含 UTF-8 字符,则失败。在其他情况下,我成功下载了文件
download(appliance: Appliance) {
const applianceObj = JSON.parse(appliance.troubleShooting);
const prettyPrinted = JSON.stringify(applianceObj, null, 2);
const data = this.base64Utils.encode(prettyPrinted);
this.dataUtils.downloadFile('application/json', data, appliance.applianceType);
}
解决方案
推荐阅读
- python - 计算一个整数有多少个因数
- sql - 我尝试对列进行定界并将其数值相乘以获得平方英尺面积,但它不起作用,有人可以纠正我吗
- r - R:R中的“同步”图
- javascript - 手风琴打开/关闭所有部分
- coldfusion - 如何使用 CFIMAP 或 CFPOP 从已删除邮件文件夹中删除电子邮件
- sql - ANSI SQL:基于特定字符将列值拆分为行
- c# - 如何使用 google drive API V3 以 txt 或 doc 格式打开 jpg
- react-native - run-ios 和 run-android 命令失败
- rust - 如何从 Rust 的闭包中跳过循环迭代?
- git - 有没有办法告诉 git 哪些行在差异中被视为已修改?