由于我的项目的性质,我有一个图像 dataURL(不是实际的图像文件),我试图通过 Pinata SDK 上传到 IPFS。我已将图像 dataURL 转换为缓冲区(数组)并尝试了 2 种不同的方法,但它们都不起作用。这是我的代码:
样品 1
var myBlob = new Blob([new Uint8Array(myBuffer)]);
var myReadableStream = myBlob.stream()
pinata.pinFileToIPFS(myReadableStream)
错误: 未处理的拒绝(TypeError):source.on 不是函数
样品 2
var myBlob = new Blob([new Uint8Array(myBuffer)]);
var myHeaders = new Headers();
myHeaders.append("pinata_api_key", "MY_KEY");
myHeaders.append("pinata_secret_api_key", "MY_SECRET_KEY");
var formdata = new FormData();
formdata.append("test", myBlob);
var requestOptions = {
method: 'POST',
headers: myHeaders,
body: formdata,
redirect: 'follow'
};
fetch("https://api.pinata.cloud/pinning/pinFileToIPFS", requestOptions)
.then(response => response.text())
.then(result => console.log('result',result))
.catch(error => console.log('error', error));
错误: 400 错误请求,结果 {"error":"Unexpected field"}