IPFS-day02

其他常用操作

  1. 添加文件并用文件夹包裹

    ipfs add xxx -w

  2. 把內容快取到本地,并提供给他人。官网文档

    ipfs pin add QmT7TX5vGmFz86V8cDkPuTss1vp4qTXeaziGZrjdJhURFf

    add 本身是递归的,所有的子目录都回被 pin 住。可以用 ipfs pin ls 看看本地 pin 的内容。

js-ipfs-api

官网

文本上传&获取

  • 上传

    ipfs.files.add(Buffer.from(value, 'utf-8'))
    .then(files => console.log(files[0].hash))
    .catch(e => console.error(e));
  • 获取

    ipfs.files.cat(inputHash, (err, file) => {
    if (err) {
    throw err;
    }
    let message = file.toString('utf8');
    console.log(message);
    })

图片上传&展示

  • 上传

    let fr = new FileReader();
    fr.onloadend=(e) => {
    // 文件加载完成, 开始上传
    ipfs.add(Buffer.from(fr.result))
    .then(result => {this.setState({imgHash: result[0].hash})})
    .catch(e => console.error(e))
    };
    // 加载文件
    fr.readAsArrayBuffer(file)
  • 展示

    <img src={`http://127.0.0.1:8080/ipfs/${imgHash}`} alt="黑马程序员"/>

音频/视频上传&展示

<div id="player__holder">
<h3>多媒体Hash: {mediaHash}</h3>
<video id="player" controls src={`http://127.0.0.1:8080/ipfs/${mediaHash}`}>
<p>Your browser does not support playing video. </p>
</video>
{/*<audio width='100%' controls>*/}
{/*<source src={`http://127.0.0.1:8080/ipfs/${mediaHash}`} />*/}
{/*</audio>*/}
</div>

本地files操作

  • ls
  • cp
  • rm

通过antd优化页面

ipfs跨平台客户端(electron)

https://github.com/ipfs-shipyard/ipfs-desktop/releases

ipfs02的更多相关文章

  1. ipfs02笔记

    IPFS-day02 其他常用操作 添加文件并用文件夹包裹 ipfs add xxx -w 把內容快取到本地,并提供给他人.官网文档 ipfs pin add QmT7TX5vGmFz86V8cDkP ...

随机推荐

  1. 123. Best Time to Buy and Sell Stock III ——LeetCode

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...

  2. TIDB1 —— TiDB简介

    TiDB 兼容 MySQL,支持无限的水平扩展,具备强一致性和高可用性. TiDB 具备如下核心特点: 1 高度兼容 MySQL  大多数情况下,无需修改代码即可从 MySQL 轻松迁移至 TiDB, ...

  3. 菜鸟崛起 DB Chapter 5 MySQL 5.6数据库表的基本操作

    5   数据库表的基本操作 在数据库中,数据表是数据库中最重要.最基本的操作对象,是数据存储的基本单位.数据表被定义为列的集合,数据在表中是按照行和列的格式来存储的.每一行代表一条唯一的记录,每一列代 ...

  4. CF605A Sorting Railway Cars(递推)

    题目描述 An infinitely long railway has a train consisting of n cars, numbered from 1 to n (the numbers ...

  5. 2018 Wannafly summer camp Day3--Shopping

    Shopping 描述 题目描述: 你要买n件物品,其中有一些是凳子. 商场正在举行促销活动,如果购物车中有至少一个凳子,那么你可以半价购买这个购物车中最贵的一个物品. 你有m辆购物车,请最小化你的花 ...

  6. [JSOI2010]Group 部落划分 Group

    Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 3661  Solved: 1755[Submit][Status][Discuss] Descripti ...

  7. 导入项目后,js文件报错解决方法

    导入项目后,发现 js文件报错,但是js文件是从官网下载的.解决办法: 选中报错的js文件, 右键选择 MyEclipse-->Exclude From Validation : 然后继续右键执 ...

  8. CentOS查看占用端口并关闭

    1.查看占用的端口号 netstat -lnp|grep 80  #80 是你需要查看的端口号 二.查看进程的详细信息 ps 29280  #查看进行信息,是否是自己要找的进程 三.杀掉进程 kill ...

  9. 基于socketserver模块实现并发的套接字(tcp、udp)

    tcp服务端:import socketserver class MyHandler(socketserver.BaseRequestHandler): def handle(self): #通信循环 ...

  10. Spark-源码-Spark-Submit 任务提交

    Spark 版本:1.3 调用shell, spark-submit.sh args[] 首先是进入 org.apache.spark.deploy.SparkSubmit 类中调用他的 main() ...