DApp-resurssien tallentaminen
Opitte lataamaan ja noutamaan DApp-sovellusten käyttöliittymäresursseja, NFT-metatietoja ja muita tiedostoja IPFS:n avulla hajauttamista varten.
DApp-resurssien tallentaminen on ilmainen Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunti CoddyKitissä. Tämä on oppitunti 2/3. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Web3:n ja DApp-sovellusten kehityksen perusteet-kurssilla on yhteensä 3 oppituntia.
Miksi DApp-resurssit kannattaa hajauttaa?
Perinteiset verkkosovellukset isännöivät käyttöliittymänsä, kuten HTML-, CSS- ja JavaScript-tiedostot, keskitetyillä palvelimilla. Jos kyseinen palvelin kaatuu tai sen sisältöä sensuroidaan, sovellukseen ei voi enää päästä.
Hajautetut sovellukset (DApp-sovellukset) pyrkivät täydelliseen hajautukseen, mutta jos älysopimus on lohkoketjussa ja käyttöliittymä (UI) yhdellä pilvipalvelimella, onko sovellus todella hajautettu? Tässä oppitunnissa tarkastellaan, miten IPFS auttaa tässä.
DApp-sovelluksen käyttöliittymän isännöinti IPFS:ssä
IPFS tarjoaa vankan ratkaisun koko DApp-sovelluksen käyttöliittymän isännöintiin. Tähän kuuluvat kaikki staattiset tiedostot: HTML-sivut, CSS-tyylitiedostot, JavaScript-koodi ja kuvat.
- Kun koko DApp-sisältö tai yksittäiset tiedostot on ladattu, ne saavat yksilöllisen Content Identifier (CID) -tunnisteen.
- Käyttäjät voivat käyttää DApp-sovellusta suoraan IPFS-yhdyskäytävän URL-osoitteen kautta, mikä tekee siitä erittäin sensuurinkestävän ja aina saatavilla olevan, kunhan se on pinnattu verkkoon.
CID:t: sisällön digitaalinen sormenjälki
Kuten edellisessä oppitunnissa opitte, IPFS käyttää sijaintiin perustuvien osoitteiden sijaan Content Identifier (CID) -tunnisteita.
- CID on itse sisällöstä laskettu kryptografinen tiiviste. Jos sisällössä muuttuu yksikin tavu, myös sen CID muuttuu.
- Tämä sisältöosoitteistus varmistaa tietojen eheyden ja muuttumattomuuden. Voitte aina tarkistaa, että käytätte juuri odottamaanne tiedostoa eikä sitä ole peukaloitu.
Resurssien lataaminen IPFS:ään
Tiedostot siirretään IPFS-verkkoon yleensä IPFS-komentoriviliittymän (CLI) tai koodissa käytettävän asiakaskirjaston avulla.
ipfs add -komentoa käytetään yleisesti. Se ottaa vastaan tiedoston tai hakemiston ja palauttaa sen yksilöllisen CID:n.
Esimerkiksi DApp-sovelluksen käyttöliittymän sisältävän kansion lataaminen:
ipfs add my_dapp_folder/Komento käsittelee kansion ja tulostaa CID:n, joka edustaa sen koko sisältöä.
Tietojen saatavuuden varmistaminen (pinnaus)
Kun käytätte komentoa ipfs add, sisältö tallennetaan aluksi vain paikalliseen IPFS-solmuunne. Jotta muut voivat käyttää sitä luotettavasti, sisältö on "pinnattava".
- Pinnaus tarkoittaa, että IPFS-solmua pyydetään säilyttämään tietystä sisällöstä kopio pysyvästi, jotta roskienkeruu ei poista sitä.
- Voitte pinnata sisältöä omalle IPFS-solmullenne tai DApp-sovelluksissa yleisemmin käyttää kolmannen osapuolen "pinnauspalvelua".
- Pinnauspalvelut tarjoavat sisältöänne varten tarkoitettua infrastruktuuria, mikä varmistaa DApp-resurssien hyvän saatavuuden ja käyttöajan.
NFT-metadatan hajauttaminen
Non-Fungible Tokenit (NFT:t) edustavat usein yksilöllisiä digitaalisia resursseja, kuten kuvia, videoita tai ääntä. NFT:n älysopimus ei tallenna itse resurssia suoraan.
Sen sijaan älysopimus tallentaa yleensä URI:n (Uniform Resource Identifier), joka osoittaa resurssin metadataan. Metadatan ja usein myös itse resurssin tallentaminen IPFS:ään on tärkeää:
- Se estää metadataa muuttumasta tai katoamasta, jos sitä isännöivä keskitetty palvelin menee offline-tilaan.
- Se varmistaa, että NFT:n arvo perustuu pysyvään ja todennettavissa olevaan dataan.
NFT-metadatan rakenne (JSON)
NFT:n metadata on yleensä JSON (JavaScript Object Notation) -tiedosto, joka sisältää kuvailevia tietoja digitaalisesta resurssista.
Se sisältää tavallisesti esimerkiksi resurssin nimen ja kuvauksen sekä linkin varsinaiseen mediatiedostoon, joka myös tallennetaan usein IPFS:ään.
Tyypillinen rakenne-esimerkki:
{
"name": "My Awesome NFT",
"description": "A unique digital collectible.",
"image": "ipfs://bafybeigdyrzt5sfp7udm7hu76uh7y26h7y3g7o...",
"attributes": [
{ "trait_type": "Background", "value": "Blue" }
]
}image-kentässä käytetään esimerkiksi ipfs://-URI-mallia, joka osoittaa suoraan resurssin CID:hen IPFS:ssä.
Miten käyttäjät käyttävät IPFS-sisältöä
Useimmat loppukäyttäjät eivät käytä omia IPFS-solmujaan. Miten he siis käyttävät IPFS:ään tallennettua sisältöä?
- He käyttävät sitä IPFS-yhdyskäytävien kautta.
- IPFS-yhdyskäytävä on tavallinen verkkopalvelin, joka toimii siltana. Se hakee sisältöä IPFS-verkosta pyynnöstä ja tarjoaa sitä tavallisen HTTP:n kautta verkkoselaimille.
- Suosittuja julkisia yhdyskäytäviä ovat esimerkiksi
https://cloudflare-ipfs.com/ipfs/<your-CID>jahttps://ipfs.io/ipfs/<your-CID>.
DApp-sovellukset hakevat IPFS-dataa
DApp-sovelluksen käyttöliittymäkoodi, joka on yleensä kirjoitettu JavaScriptillä, voi hakea sisältöä IPFS:stä helposti CID-tunnisteiden ja yhdyskäytävien avulla.
- DApp muodostaa tavallisen verkko-URL-osoitteen IPFS-yhdyskäytävän osoitteesta ja sisällön CID:stä.
- Sen jälkeen se hakee sisällön tavallisilla verkkopyynnöillä, kuten JavaScriptin
fetch-rajapinnalla, aivan kuten minkä tahansa muun verkkoresurssin.
Seuraava on käsitteellinen JavaScript-esimerkki:
const cid = "bafybeigdyrzt5sfp7udm7hu...";
const gatewayUrl = `https://ipfs.io/ipfs/${cid}`;
fetch(gatewayUrl)
.then(response => response.json())
.then(data => console.log("NFT Metadata:", data))
.catch(error => console.error("Error fetching data:", error));IPFS-tallennuksen tarkistus
Kun rakennatte DApp-sovellusta, miksi käyttöliittymäresurssit, kuten HTML, CSS ja JavaScript, sekä NFT-metadata kannattaa tallentaa IPFS:ään perinteisen keskitetyn web-palvelimen sijaan?
Kertaus: DApp-resurssien tallentaminen
Olette oppineet, miten IPFS tarjoaa hajautetun ja vankan tavan tallentaa DApp-sovelluksen keskeisiä osia, kuten käyttöliittymäresursseja ja NFT-metadataa.
- Käsittelimme tiedostojen lataamista
ipfs add-komennolla sekä pinnauspalveluiden ratkaisevaa roolia sisällön säilymisessä. - Ymmärrätte nyt, miten CID:t varmistavat muuttumattomuuden ja miten IPFS-yhdyskäytävien avulla käyttäjät voivat käyttää hajautettua sisältöä tavallisilla verkkoselaimilla.
- Nämä tiedot ovat olennaisia rakennettaessa vikasietoisia, sensuurinkestäviä ja aidosti hajautettuja DApp-sovelluksia.
Seuraavaksi tutustumme Filecoiniin, joka rakentuu IPFS:n päälle ja tarjoaa kannustimiin perustuvan ja todennettavan kerroksen pitkäaikaista ja pysyvää tallennusta varten.
Opi Web3:n ja DApp-sovellusten kehityksen perusteet tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 29
- Oppitunnit
- 105
Usein kysytyt kysymykset
Onko oppitunti ”DApp-resurssien tallentaminen” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolun 3 oppituntia, myös oppitunnin “DApp-resurssien tallentaminen”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Web3:n ja DApp-sovellusten kehityksen perusteet-kurssilla on yhteensä 3 oppituntia.
Mitä opin oppitunnilla ”DApp-resurssien tallentaminen”?
Opitte lataamaan ja noutamaan DApp-sovellusten käyttöliittymäresursseja, NFT-metatietoja ja muita tiedostoja IPFS:n avulla hajauttamista varten. Harjoittelet Web3:n ja DApp-sovellusten kehityksen perusteet-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Web3:n ja DApp-sovellusten kehityksen perusteet-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Web3:n ja DApp-sovellusten kehityksen perusteet-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/3.
Kuinka kauan ”DApp-resurssien tallentaminen”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunnilla?
Kyllä. Jokainen Web3:n ja DApp-sovellusten kehityksen perusteet-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Johdatus IPFS:ään
- DApp-resurssien tallentaminen
- Filecoin ja hajautettu tallennus