javascript - 在 base64url 编码之前,是否有将 `+` 和 `/` 转换为 `-` 和 `_` 的原生 JS 方法?它是什么?
问题描述
我正在阅读代码库,并注意到作者根据 base64url 规范在 base64url 编码之前手动使用替换来清理字符串。
str = str.replace(/=+$/, ''); // remove padding equal characters
str = str.replace(/\+/g, '-'); // replace characters according to base64url specifications
str = str.replace(/\//g, '_'); // replace characters according to base64url specifications
有这样做的本机方法吗?它是什么?
解决方案
是的。在 javascript 中有 encodeURIComponent() 和 decodeURIComponent():
https://www.w3schools.com/tags/ref_urlencode.asp
https://www.w3schools.com/jsref/jsref_decodeuricomponent.asp
推荐阅读
- python - 导入时分配模块对象
- c - 在运行非常旧的 C 代码时遇到分段错误
- java - 大数据请求的 Http 客户端连接失败
- pdf - 如何在 Puppeteer 中为所有相对 URL 添加绝对路径(本地 html 文件应从 Web 加载图像以生成 PDF)
- r - 有没有比dfm中的“stem = TRUE”更好的方法来忽略复数?
- javascript - 尝试使用 jQUERY 加载 .json
- java - 我有一个关于java多态的问题
- java - 无法部署 Intellij 项目
- java - 未能删除 LinkedList 中的第一个节点,但成功删除其他节点
- mysql - 如何在 CSV 导入(MariaDB / MySQL)上生成串联主键?