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. o'Reill的SVG精髓(第二版)学习笔记——第八章

    第八章:图案和渐变 要使用图案,首先要定义一个水平或者垂直方向重复的图形对象,然后用它填充另一个对象或者作为笔画使用.这个图形对象呗称作tile(瓷砖). 下面可以把SVG绘制的二次曲线作为图案. & ...

  2. Question20171231 聊聊为什么32bit只能支持4GB内存

    1. 32位系统最大只能支持4GB内存之由来 也许大家对这个问题都不陌生,实际装过系统用过电脑的朋友可能都有这样的经历:自己电脑配的是4G的内存条,可是装完系统之后发现电脑上显示的只有3.2G左右可用 ...

  3. js事件委托代码优化【感悟总结】

    前两天接手了同事的一个项目,是一个网站首页,其中有段代码很累赘,要实现的功能就是, 通过给父元素添加鼠标移入移出事件,来控制子元素显示隐藏. html代码,一共有四个父元素div,每个父元素嵌套一个子 ...

  4. WebGL学习笔记(3)

    根据上篇笔记,在对3D对象可进行普通的控制后,以及学习了http://hiwebgl.com的教程第10章内容:世界模型的载入以及控制镜头移动,经过多次调试矩阵代码,已经可以实现在世界中旋转镜头/控制 ...

  5. linux下mysql主从复制,实现数据库同步

    运行环境: 查看linux版本命令:lsb_release -a 主服务器:centos release 6.5 mysql 5.6.10-log  IP:172.17.200.25从服务器:cent ...

  6. yarn的学习之2-容量调度器和预订系统

    本文翻译自 http://hadoop.apache.org/docs/r2.8.0/hadoop-yarn/hadoop-yarn-site/CapacityScheduler.html 和http ...

  7. MySQL 字符串函数:字符串截取

    1.left(name,4)截取左边的4个字符 列: ,) 年 结果:2018 2.right(name,2)截取右边的2个字符 ,) 月份 结果:09 3.SUBSTRING(name,5,3) 截 ...

  8. Linux环境中配置环境变量无效

    1.在Linux系统中的[ ~/.baserc ]文件与[ /etc/profile ]配置环境变量后(可以使任意环境变量)无效的现象,如下为解决办法: 使用命令: vim ~/.zshrc 在 [# ...

  9. react初学

    react和vue一样都是mvvm的这种开发模式. 下载js文件 引入HTML文件里 <!DOCTYPE html> <html> <head> <scrip ...

  10. Lavavel5.5源代码 - 限流工具

    app('redis')->connection('default')->throttle('key000') // 每60秒,只能有10个资源被获取,在3秒内获取不到锁抛出异常 -> ...