Ethereum-Wallet-Dapp
資源文件未以 ipfs 名稱發布
我製作了用於與智能合約互動的範例 dapp 應用程序,當我將其發佈到 ipfs 時,我開發了一個基本 ui,就像我看到教程和 ipfs 文件一樣,我只能獲得 index.html 文件,支持腳本和 css 文件正在拋出錯誤文件未找到。任何人都可以幫助我解決這個問題。
很可能您以錯誤的方式連結到資源。確保您使用相對URL 來引用您的資源,所以不要做
<script src="/my-script.js"></script>
(絕對連結),而是做<script src="./my-script.js"></script>
(相對連結)。這是因為 IPFS 網站可以在許多情況下載入。連結到
./my-script.js
將始終正常工作,而絕對可以在某些但不是全部工作。一些例子:
開發上下文,您載入
http://localhost:3000
,/my-script.js
(絕對)工作正常,因為您的網站根目錄是localhost:3000
.您載入的網關上下文
http://ipfs.io/ipfs/$yourHash
現在/my-script.js
無法正常工作,因為它會嘗試從載入http://ipfs.io/my-script.js
而不是載入http://ipfs.io/ipfs/$yourHash/my-script.js
。相對連結解決了這個問題。您載入的 Dnslink 上下文將
http://example.com
再次/my-script.js
正常工作,因為您的網站根目錄是example.com
.因此,請驗證您的資源連結實際上是相對的。如果它們已經存在,請發布您的程式碼,以便我們進一步調查。