前端| pem 格式用 a 标签下载变成 cer 格式问题

2023-01-16 14:26:41 +08:00
 ianchoi
const key = `
---start---
xxxxxxx
---end---
`

const blob = new Blob([key], {
  type: 'application/x-pem-file',
})
const a = document.createElement('a')
a.href = window.URL.createObjectURL(blob)
a.download = 'key.pem'
a.style.display = 'none'
document.body.appendChild(a)

a.click()

大概代码如上,key 是 String 格式

下载完文件格式就变成 key.cer

求解

631 次点击
所在节点    前端开发
4 条回复
DingJZ
2023-01-16 16:50:37 +08:00
是不是和平台相关,我用 mac 的 chrome 这段代码粘到控制台下载是没问题的,是 pem 格式
horseInBlack
2023-01-16 16:59:43 +08:00
Windows + edge 下载的也是 pem
julyclyde
2023-01-17 14:07:59 +08:00
你这个 URL 不带扩展名,也没有带 content disposition header 吧,所以存盘的时候用什么扩展名,其实是由浏览器根据 MIME 脑补的?
ianchoi
2023-01-17 15:20:48 +08:00
@DingJZ 我在 Chrome 试了也是 pem 格式,但开发是用 react + antd 的环境

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/909266

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX