1. 首页
  2. 文档
  3. BTFS中文文档教程
  4. DApp开发
  5. 开发者SDK

开发者SDK

介绍

BTFS目前与IPFS 兼容的JavaScriptGo SDK库相同。本指南引导用户通过SDK集成BTFS网络和TRON智能合约的简单示例。

示例

假设您的基于Web的DApp的主HTML页面引用了后端JS文件:

<script type="text/javascript" src="backend.js?2019.06.03.v2"> </script>

要实现向BTFS添加文件的功能,您可以先定义BTFS节点的IP地址和可访问端口。

const ipAddr = "api.btfs.trongrid.io";
const ipPort = "443";

然后使用主机IP,端口号和协议定义变量。

const btfs = window.IpfsApi({host:ipAddr, port:ipPort, protocol:'https'});

add方法的形式.add(data, [options], [callback]),其中数据可能是:

  • 可读流
  • 缓冲区实例
  • 一份文件
  • Pull数据流
  • 一组对象,每个对象采用以下形式:
{
  path: '/tmp/myfile.txt', // The file path
  content: <data> // A Buffer, Readable Stream, Pull Stream or File with the contents of the file
}
// backend.js

const ipAddr = "api.btfs.trongrid.io";
const ipPort = "443";

async function add() {
    const btfs = window.IpfsApi({host:ipAddr, port:ipPort, protocol:'https'});
    const Buffer = window.IpfsApi().Buffer;
    const newReader = new FileReader();
    var movieHash, coverHash;
    newReader.onloadend = function () {
        const buf = Buffer.from(newReader.result);
        btfs.files.add(buf, (err, result) => {
            if(err) {
                console.error(err);
                return
            }
            let url = `https://yourURL./btfs/${result[0].hash}`;
            console.log(`Url --> ${url}`);
            document.getElementById("url").innerHTML= url;
            document.getElementById("url").href= url;
            document.getElementById("url").target = '_blank';
        });
    };
    const DApp = document.getElementById("DApp");
    newReader.readAsArrayBuffer(DApp.files[0]);
}

资源

标签 , ,
这篇文章对你有帮助吗?

我们要如何帮助您?