作者簡介:戴嘉樂( Mr.Maple ) | 前百度高級研發(fā)工程師 | IPFS應(yīng)用實(shí)踐者&布道師|
個(gè)人網(wǎng)站:https://www.daijiale.cn
微信號:daijiale6239
注意:文章中部分鏈接需要 科學(xué)上網(wǎng) 才能訪問下載
一凹嘲、應(yīng)用簡介
IPFS伴侶(IPFS Companion)是一個(gè)由IPFS官方應(yīng)用社區(qū)(IPFS-Shipyard)孵化出來的應(yīng)用項(xiàng)目。 Ta是一個(gè)瀏覽器插件构韵,可以幫助用戶在本地更好的運(yùn)行周蹭、管理自己的節(jié)點(diǎn),并隨時(shí)查看IPFS節(jié)點(diǎn)的資源信息疲恢。
1.1 效果
1.2 開源地址
https://github.com/ipfs-shipyard/ipfs-companion
二凶朗、應(yīng)用特性
2.1 IPFS資源自動檢測
可以檢測到如:/ipfs/$cid
或 /ipns/$peerid_or_fqdn
這樣網(wǎng)頁端的任何資源請求鏈接。如果經(jīng)過測試的資源鏈接是一個(gè)有效的IPFS地址显拳,它將被重定向并從本地網(wǎng)關(guān)加載:
例如:
https://ipfs.io/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR
→ http://127.0.0.1:8080/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR
2.2 IPFS連接狀態(tài)和圖形操作欄
- IPFS接口和網(wǎng)關(guān)狀態(tài)
- 本地文件快速上傳圖形操作
- 一鍵登錄WebUI控制臺以及偏好管理
- 支持重定向切換到本地網(wǎng)關(guān)(默認(rèn)情況下棚愤,手動模式可以在首選項(xiàng)中啟用)
- 可以對IPFS加載頁進(jìn)行如下的附加操作:
- 通過API對IPFS資源進(jìn)行Pin/Unpin
- 復(fù)制IPFS地址
- 將可分享的資源地址復(fù)制到首選網(wǎng)關(guān)中
2.3 調(diào)試實(shí)驗(yàn)
默認(rèn)情況下是未啟用的,需要切換到Preferences Screen杂数。
- 通過 自定義ipfs://網(wǎng)關(guān)協(xié)議 重新路由到HTTP網(wǎng)關(guān):
ipns://$cid
ipns://$cid_or_fqdn
dweb:/ipfs/$cid
dweb:/ipns/$cid_or_fqdn
- 通過 dnslink 檢測DNS文本記錄并從IPFS加載它們
- 讓純文本的IPFS鏈接可以被點(diǎn)擊
- 右鍵點(diǎn)擊任何圖像或視頻來進(jìn)行IPFS鏡像切換
- 即使在外部API關(guān)閉的情況下宛畦,本地節(jié)點(diǎn)也可以用于上傳數(shù)據(jù)。
- 將IPFS API的子集公開為window.ipfs 揍移,意味著每個(gè)網(wǎng)頁加載時(shí)就可以監(jiān)聽到IPFS節(jié)點(diǎn)的接入次和,而不是生成自己的js-ipfs節(jié)點(diǎn),這節(jié)省了資源那伐、電量等消耗踏施。
三、安裝方式
3.1 穩(wěn)定版本(Release)
注意: ipfs-companion是作為IPFS Daemon守護(hù)進(jìn)程的擴(kuò)展而設(shè)計(jì)的罕邀,請確保你的電腦上已先提前安裝了 IPFS
3.2 測試版本(Beta)
主要面向開發(fā)者人群和發(fā)燒友調(diào)試使用
- Firefox Beta 版本 : Self-hosted Signed Dev Build
- Chrome Beta 版本: Dev Build at Chrome Web Store
四畅形、使用演示
這邊截圖了部分自己的使用情況,給大家圖文說明:
- 安裝擴(kuò)展
- 設(shè)置Chrome瀏覽器該插件為啟用狀態(tài)
- 插件識別不到本地節(jié)點(diǎn)啟動诉探,處于離線狀態(tài)
- 啟動本地節(jié)點(diǎn)
- 打開 IPFS伴侶插件日熬,將自動識別IPFS短鏈,并開啟重定向功能
- 得益于官方的JS擴(kuò)展支持到了window.ipfs的程度
- 進(jìn)入插件配置選項(xiàng)肾胯,如下圖所示竖席,這邊可以根據(jù)用戶&開發(fā)者需要,靈活調(diào)整網(wǎng)關(guān)阳液、API怕敬、和DNS配置
- 識別到ipfs短鏈資源,且能查看到連接節(jié)點(diǎn)數(shù)
- 快速上傳功能
- 快速上傳后發(fā)布到公網(wǎng)
- 通過插件打開Web UI控制臺 Review資源同步狀態(tài)
PS:之前大部分的朋友都是通過命令行來操作這些,比較繁瑣,耗時(shí)膝捞,這次 Mr.Maple博主特意給大家介紹了一款這樣的瀏覽器工具,期望能幫助各位IPFS開發(fā)者&發(fā)燒友節(jié)約更多精力虽填。
五、開發(fā)支持其他瀏覽器的插件
這邊曹动,官方公布了Web擴(kuò)展API斋日,供開發(fā)者和發(fā)燒友使用,支持開發(fā)者構(gòu)建基于其他瀏覽器的插件墓陈。感興趣恶守、有能力的朋友可以實(shí)現(xiàn)一下運(yùn)行在360、獵豹贡必、QQ(這些基于Chrome和Firefox內(nèi)核)的瀏覽器的IPFS工具插件兔港。
官方支持兩種構(gòu)建模式:
- 資源包構(gòu)建(推薦)
- Docker鏡像構(gòu)建
具體實(shí)現(xiàn)Tips如下: Developer Notes for IPFS Companion
值得一提的是:
2018年1月26日,火狐 WebExtensions 產(chǎn)品經(jīng)理 Mike Conca 在 Mozilla 官網(wǎng)發(fā)布了文章(Extensions in Firefox 59)仔拟,列舉了火狐59的最新擴(kuò)展(目前發(fā)布于測試版)衫樊。其中一項(xiàng)特性是支持包括IPFS在內(nèi)的分布式協(xié)議。
所以利花,強(qiáng)烈建議對IPFS瀏覽器插件開發(fā)感興趣的開發(fā)者使用基于Firefox內(nèi)核的瀏覽器 調(diào)試會比較好科侈。
六、使用QA和Bug提交
官方在Github上提供了專門的issue討論區(qū)炒事,大家在使用過程中遇到問題可以在這查詢解決方案: https://github.com/ipfs/ipfs-companion/issues/22.
七臀栈、參考文獻(xiàn)
- 【區(qū)塊鏈】利用ipfs構(gòu)建自己的去中心化分布式wiki系統(tǒng)
- ipfser.org:火狐瀏覽器支持IPFS在內(nèi)的分布式協(xié)議
- Github Organization ---- IPFS Shipyard 船廠
相關(guān)文章和視頻推薦
【戴嘉樂】IPFS Desktop:IPFS節(jié)點(diǎn)桌面管理App
圓方圓學(xué)院匯集大批區(qū)塊鏈名師,打造精品的區(qū)塊鏈技術(shù)課程挠乳。 在各大平臺都長期有優(yōu)質(zhì)免費(fèi)公開課挂脑,歡迎報(bào)名收看。
公開課地址:https://ke.qq.com/course/345101