Javascript 这些Buffer.from-toString(';base64';)不';不能正确转换-我缺少什么? 在runkit上检查此节点:
有许多来源想出了获取这个特定图像并将其转换为base64编码的数据uri的方法Javascript 这些Buffer.from-toString(';base64';)不';不能正确转换-我缺少什么? 在runkit上检查此节点:,javascript,node.js,base64,Javascript,Node.js,Base64,有许多来源想出了获取这个特定图像并将其转换为base64编码的数据uri的方法 var requestBase64=require('base64-img')。requestBase64; var请求=要求(“请求”); var got=要求(“got”); url='1〕http://c1.staticflickr.com/2/1442/26088546654_d034205325_n.jpg'; 响应=等待获取(url); const buf=Buffer.from(response.bo
var requestBase64=require('base64-img')。requestBase64;
var请求=要求(“请求”);
var got=要求(“got”);
url='1〕http://c1.staticflickr.com/2/1442/26088546654_d034205325_n.jpg';
响应=等待获取(url);
const buf=Buffer.from(response.body,'binary');
const data=buf.toString('base64');
log(`data:image/jpeg;base64,${data}`);
requestBase64(url、函数(错误、响应、正文){
控制台日志(主体);
});
请求(url、函数(错误、响应、正文){
const buf=Buffer.from(body,'binary');
const data=buf.toString('base64');
log(`data:image/jpeg;base64,${data}`);
});
您可以将{encoding:null}
传递给请求
,它返回与requestBase64相同的数据
request(url, {encoding: null}, function (error, response, body) {
const buf2 = Buffer.from(body, 'binary');
const data2 = buf2.toString('base64');
console.log(`data:image/jpeg;base64,${data2}`);
});
类似于got
库,您可以传入编码
response = await got(url, { encoding: null });
您可以将
{encoding:null}
传递给请求
,它返回与requestBase64相同的数据
request(url, {encoding: null}, function (error, response, body) {
const buf2 = Buffer.from(body, 'binary');
const data2 = buf2.toString('base64');
console.log(`data:image/jpeg;base64,${data2}`);
});
类似于got
库,您可以传入编码
response = await got(url, { encoding: null });
什么是“其他人”-他们以什么方式“不工作”?不工作意味着他们的输出不是datauri不显示的base64编码?正确的显示原始图像。。。?您可以在runkit上运行它,然后看到-这是服务器端节点,因此代码段无法工作是的,我看到-因此,
request
和got
得到了彼此相同的结果,因此,它们都得到了“错误”的结果同样,将前80个左右的字符从base64转换为二进制将有助于您了解它们的错误所在“其他字符”是什么?它们以什么方式“不工作”?不工作意味着它们的输出不是datauri不显示的base64编码?正确的显示原始图像。。。?您可以在runkit上运行它,然后看到-这是服务器端节点,因此代码段无法工作是的,我看到-因此,request
和get
得到的结果彼此相同,因此,它们都以完全相同的方式“错误”了-将前80个左右的字符从base64转换为二进制应该可以帮助您看到它们的错误所在是的,非常感谢。它们现在都生成有效的datauri。我需要弄清楚这些请求包装中的默认编码是怎么回事。好吧,默认值是utf8,这就是它们不同的原因。是的,谢谢。它们现在都生成有效的datauri。我需要弄清楚这些请求包装中的默认编码是怎么回事。好吧,默认值是utf8,这就是它们不同的原因。