我正在连接到 Google Insights API,并尝试提取图像。我无法显示它,经过一番研究后发现 Base64 图像的编码/符号错误。为了使图像正常工作,我需要将所有“_”替换为“/”,将所有“-”替换为“+”。
下面您可以看到我用来尝试此操作的代码片段:
.replace('_', '/').replace('-', '+');
为了方便起见,我将 API 的结果保存为变量,其代码(包括替换)为:
desktop['screenshot'] = screenshot.replace('_', '/').replace('-', '+');
但是我和一位同事找不到它不被替换的原因,经过 3 个小时的谷歌搜索,我来到了这里。
请您指出哪里出了问题/哪里出了问题?
最佳答案
.replace
方法默认替换第一次出现的匹配项 ( MDN )。但您需要替换所有出现的情况,请尝试以下操作:
desktop['screenshot'] = screenshot.replace(/_/g, '/').replace(/\-/g, '+');
关于javascript - .replace 不适用于不正确的 base64,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32519893/