星际名称系统(IPNS)是一个创建个更新可变的链接到IPFS内容的系统,由于对象在IPFS中是内容寻址的,他们的内容变化将导致地址随之变化。对于多变的事物是有用的。但是很难获取某些内容的最新版本。

在IPNS中名字是被哈希的公钥。它与一条记录相关联,该记录包含有关其链接的哈希的信息,该信息由相应的私钥签名。新的记录可以在任何时候被签名与发布。

查看IPNS地址,使用了/ipns/前缀:

/ipns/QmSrPmbaUKA3ZodhzPWZnpFgcPMFWF4QsxXbkWfEptTBJd

IPNS不是在IPFS上创建可变地址的唯一方法。 您还可以使用DNSLink(当前比IPNS快得多,并且还使用更易读的名称)。 其他社区成员正在探索使用区块链存储通用名称记录的方法。

例如:

假设您要在IPFS下发布您的网站。 您可以使用Files API发布静态网站,然后获得一个可以链接到的CID。 但是,当您需要进行更改时,就会出现问题:您将获得一个新的CID,因为您现在拥有不同的内容。 而且,您不可能总是给别人新的地址。

这是Name API派上用场的地方。 使用它,您可以创建一个稳定的IPNS地址,该地址指向您网站最新版本的CID。

//文件的地址
const addr = '/ipfs/QmbezGequPwcsWo8UL4wDF6a8hYwM1hmbzYv2mnKkEWaUp' ipfs.name.publish(addr, function (err, res) {
// 接收到包含两个字段的资源:
// - name: 被发布的内容的名字
// - value: 名字指向的"真实"的地址
console.log(`https://gateway.ipfs.io/ipns/${res.name}`)
})

用这种方式,可以使用相同的地址重新发布一个新的版本到网页,默认情况下,ipfs.name.publish将会使用节点ID。

最新文章

  1. Fis3前端工程化之项目实战
  2. 【HDU 3037】Saving Beans Lucas定理模板
  3. Java多线程 2 线程的生命周期和状态控制
  4. hibernate对象的三种状态
  5. 父容器根据子容器高度自适应:设置父容器 height:100%;overflow:hidden;
  6. java对象存储管理
  7. HTTP协议的状态码
  8. C#文件操作系列(一)
  9. 用android-x86模拟器不能运行程序错误Tag:libc的问题
  10. Windows平台Atom编辑器的常用快捷键小抄Cheat Sheet
  11. javascript 实现禁止右键,复制,选取文本 (兼容firefox,IE,chrome等主流浏览器)
  12. SQL SERVER 删除前判断指定的表或者存储过程是否存在
  13. linux 命令 — find
  14. Maven笔记 #01# 入门
  15. nodejs sequelize 对应数据库操作符的定义
  16. S老师 破坏神学习
  17. SQL 字符串分割表函数
  18. BugkuCTF web2
  19. spirngcloud文件
  20. VC++下使用ADO操作数据库

热门文章

  1. Java中的继承、封装、多态的理解
  2. Flutter学习笔记(30)--Android原生与Flutter混编
  3. Matlab生成Word--xdd
  4. mvc 学习笔记
  5. [UWP]UIElement.Clip虽然残废,但它还可以这样玩
  6. [需求设计]从一个小需求感受Redis的独特魅力
  7. Android最大方法数和解决方案
  8. R语言学习笔记(2)——数据结构与数据集
  9. django初始化
  10. 腾讯云docker加速