javascript - 通过 nft.storage API 在 IPFS 上发布图像文件 - curl 和 javascript
问题描述
我不是全职编码员,我一直在尝试通过 nft.storage API 将文件发送到 IPFS。我正在尝试发送存储在我的服务器中的图像文件,而不是来自网络表单。
我在我的电脑上使用了如下 curl 功能,它可以工作。
curl -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsIn..." -H "Content-Type: image/png" --data-binary "@C:/mydoc/beerbee/beerbee-icon.png" --url "https://api.nft.storage/upload"
但是,它不适用于下面的 js 代码。每当我访问内容寻址标识符 URL 时,我唯一得到的是文本“@home/myfolder/file.png”(不是图像),例如 -> https://bafkreicpceead4w3hsrnyhvkwab233x66wpra57rwqyx5im4jikt4ety3q.ipfs.dweb.link/
document.getElementById("test").addEventListener("click", function() {
var url = "https://api.nft.storage/upload";
var xhr = new XMLHttpRequest();
xhr.open("POST", url);
xhr.setRequestHeader("Authorization", "Bearer eyJhbGciOiJIUzI1NiIsInR5cC....");
xhr.setRequestHeader("Content-Type", "image/png");
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
console.log(xhr.status);
console.log(xhr.responseText);
}};
var data = "@home/myfolder/file.png";
xhr.send(file);
});
解决方案
推荐阅读
- javascript - Phaser.js 街机物理重叠不起作用
- go - 从 bigquery 开放数据库查询 IP 地理位置数据:geolite2
- javascript - 在 setState 之后空 × 2 没有变异
- java - JPA Hibernate N+1 问题,即使使用 Join Fetch
- ruby-on-rails - Ruby - 没有将 false 隐式转换为字符串
- html - 我在使用 mat native select 时收到此“错误:mat-form-field 必须包含 matformfieldcontrol”
- python - Python min() 使用两个键
- google-cloud-dataflow - Apache Beam 中的推测执行
- javascript - 如何使函数在javascript中同步执行?或者如何让函数一个接一个地执行?
- javascript - expo AsyncStorage 方法不是函数