Ropsten Ethereum vandhane: Internet App

Jackson Ng

Følg

div>

okt 18, 2020 · 4 min læs

denne serie af tutorial dokumenterer min proces med at opbygge en Ethereum-vandhane på Ropsten testnet. Dette er den 4.artikel i serien, og det forklarer koderne bag vandhanen app. Vandhane-appen giver anmodere mulighed for at give deres tegnebogadresse for at lade vandhanen uddele gratis ETH til dem.

  1. Ropsten Ethereum vandhane: hvordan det virker
  2. Ropsten Ethereum vandhane: Smart kontrakt
  3. Ropsten Ethereum vandhane: JSON Internet Service
  4. Ropsten Ethereum vandhane: Internet App

kildekoderne til dette projekt er i projektets Github repository og vandhane smart kontrakt er tilgængelig her.

foto af Kirsten Marie Ebbesen på Unsplash

ikke en dapp

Ved design er vandhane-appen ikke en decentraliseret applikation (dapp). Det forbinder ikke direkte til en Blockchain, og det integreres ikke med en Ethereum-tegnebog; med rette, fordi som jeg har forklaret i Del 1, ETH-anmodere, der ønsker gratis ETH, sandsynligvis ikke allerede ejer ETH i deres tegnebog. Så en vandhane skal ikke kun give ud gratis ETH, men også være i stand til at finansiere transaktionerne på Ethereum Blockchain for at gøre det.

denne vandhane App gør simpelthen internet service opkald til vandhane JSON Internet Service til at udføre ETH overførsel fra min vandhane tegnebog, til anmoderens tegnebog.

Tag Dette blockchain kursus og blive en blockchain udvikler

koderne

mine koder findes i mit GitHub repository her.

function serverURL(){
return "https://resonant-backpack.glitch.me";
}

linjer 46 Til 48 fortæller Internetappen, hvor JSON-internettjenesten er. Min JSON-internettjeneste kører i fejl.

$( document ).ready(function() {
$("#btnGo").bind("click", function () {
go(); });
$("#loader").hide();
eth();
});

linjer 54 Til 62 foretager opkald til 2 JavaScript-funktionergo()ogeth()go()kører, når brugeren klikker påbtnGo knappen for at starte en overførsel af ETH fra vandhane til sin tegnebog. eth() kører, når siden indlæses for første gang.

function eth(){
var url = serverURL() + "/ethers"; $.ajax({
type: 'POST',
url: url,
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
contentType: 'application/x-www-form-urlencoded; charset=utf-8',
dataType: 'json',
success: function (arr) {
_ethResult(arr);
},
error: function () {
validationMsg();
}
});
}function _ethResult(arr) {
$("#faucetvalue").text("Faucet: " + arr.ethbalance + " ETH");
}

linjer 65 til 85 send en anmodning til JSON-internettjenesten/ethers for at finde ud af, hvor meget ETHS vandhanen har. Det opdaterer derefter #faucentvalue div med den ETH-værdi, som internettjenesten returnerer.

function go() {
$("#message").text("");
$("#loader").show();
var url = serverURL() + "/sendethers";
walletaddress = $("#walletaddress").val();
myrequest = $("#myrequest").val();
var JSONObject = {
"receiver": walletaddress,
"request": myrequest
};
$.ajax({
type: 'POST',
url: url,
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
contentType: 'application/x-www-form-urlencoded; charset=utf-8',
dataType: 'json',
data: JSONObject,
success: function (arr) {
_goResult(arr);
},
error: function () {
validationMsg();
}
});
}function _goResult(arr) {
$("#message").text("OK");
eth()
$("#loader").hide();
}

linjer 87 til 119 definerer funktionengo() som gør en anmodning til vandhanen gennem JSON-internettjenesten.

det konstruerer enJSONObject ved at angive anmoderens tegnebogadresse (walletaddress) og mængden af ETH, som han ønsker at modtage (myrequest).

et internettjenesteopkald til/sendethers blev foretaget ved at giveJSONObject. Anmoderen venter derefter på, mens internettjenesten vender tilbage for at fortælle anmoderen, at hans ETH-anmodning er opfyldt.

Hvad er det næste?

kildekoderne til disse projekter kan findes i mit Github-arkiv.

dette fuldender Ethereum vandhane serie af tutorial, tak for at hænge ud og mine oprigtige undskyldninger for at tage tæt på 10 måneder til at fuldføre denne serie!

Hvis du nød denne tutorial, kan du måske også ønske at læse:

  • afstemning om en Blockchain: en implementering af en Stemmedapp på Ethereum.
  • Minimum levedygtig Ethereum mobil tegnebog: En React Native-baseret skabelon, som jeg konstruerede til projekter, der kræver en mobil Ethereum tegnebog.
  • Implementer en privat Ethereum Blockchain på 10 minutter med Kaleido: at få en privat Ethereum Blockchain i gang i en jiffy.
  • Smart kontrakt forklaret ved Demonstration: en demo af en spærret tjeneste Smart kontrakt DApp — efter min mening, den hurtigste måde at forklare en lægmand, hvad Blockchain er.Ethereum IoT Kid Grounding Device: mit forsøg på at indarbejde Blockchain med Internet of Things.
  • lotteri som en Smart kontrakt: Distribueret lotteri, et forsøg på at opbygge et lotterisystem på Ethereum Blockchain.

Læs også

  • den bedste Crypto Trading Bot
  • Crypto Copy Trading Platforms
  • bedste Crypto Trading Platforms
  • bedste Crypto Lending Platforms
  • bedste Blockchain analyseværktøjer
  • Crypto arbitrage guide: hvordan man tjener penge som nybegynder
  • bedste Crypto Charting Tool
  • hvad er de bedste bøger at lære om Bitcoin?
  • 3commas anmeldelse
  • Aaksa udveksling anmeldelse | henvisningskode, handelsgebyr, fordele og ulemper
  • Deribit anmeldelse | muligheder, gebyrer, API ‘ er og Testnet
  • Ngrave nul anmeldelse
  • Bybit udveksling anmeldelse
  • 3commas vs Cryptohopper
  • den bedste Bitcoin — tegnebog
  • bedste Monero tegnebog
  • Ledger Nano S vs
  • Bitsgap vs 3commas vs kvadency
  • Ledger Nano S vs Tresor one vs Tresor t vs Ledger Nano
  • blockfi vs Celsius vs hodlnaut
  • Bitsgap anmeldelse-en Kryptohandelsbot, der gør det nemt at En Crypto Trading Bot lavet til professionelle
  • Primeksbt anmeldelse / gearing Trading, Fee and Covesting
  • Ellipal Titan anmeldelse
  • sten anmeldelse
  • BlockFi anmeldelse / Tjen op til 8,6% interesser på din Crypto

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.