ta seria tutoriali dokumentuje mój proces budowania baterii Ethereum w sieci testowej Ropsten. Jest to czwarty artykuł z serii i wyjaśnia kody stojące za aplikacją internetową Kran. Aplikacja internetowa Faucet pozwala żądającym podać adres portfela, aby umożliwić kranowi danie im bezpłatnego ETH.
- Ropsten Ethereum Faucet: jak to działa
- Ropsten Ethereum Faucet: Smart Contract
- Ropsten Ethereum Faucet: JSON Web Service
- Ropsten Ethereum Faucet: Web App
kody źródłowe tego projektu znajdują się w repozytorium projektu Github, a inteligentny kontrakt baterii jest dostępny tutaj.
nie jest DAPP
z założenia aplikacja internetowa kran nie jest zdecentralizowaną aplikacją (DAPP). Nie łączy się bezpośrednio z Blockchain i nie integruje się z portfelem Ethereum; słusznie, ponieważ jak wyjaśniłem w części 1, osoby żądające ETH, które chcą darmowego ETH, prawdopodobnie nie będą już posiadać ETH w swoim portfelu. Tak więc kran musi nie tylko rozdawać bezpłatne ETH, ale także być w stanie finansować transakcje w łańcuchu bloków Ethereum, aby to zrobić.
Ta aplikacja internetowa kranu po prostu wykonuje połączenia z usługą internetową kranu JSON, aby wykonać transfer ETH z mojego portfela kranu do portfela wnioskodawcy.
Weź udział w kursie blockchain i zostań programistą blockchain
kody
moje kody znajdują się w moim repozytorium GitHub tutaj.
function serverURL(){
return "https://resonant-backpack.glitch.me";
}
linie od 46 do 48 informują aplikację internetową, gdzie znajduje się usługa internetowa JSON. Moja usługa internetowa JSON działa w usterce.
$( document ).ready(function() {
$("#btnGo").bind("click", function () {
go(); });
$("#loader").hide();
eth();
});
linie od 54 do 62 wykonują połączenia do 2 funkcji JavaScriptgo()
Ieth()
go()
uruchamia się, gdy użytkownik kliknie przyciskbtnGo
, aby zainicjować transfer ETH z kranu do swojego portfela. eth()
uruchamia się, gdy strona ładuje się po raz pierwszy.
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");
}
linie od 65 do 85 Wyślij zapytanie do serwisu internetowego JSON/ethers
, aby dowiedzieć się, ile ETHs ma kran. Następnie aktualizuje #faucentvalue div
o wartość ETH, którą zwraca Usługa sieciowa.
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();
}
linie od 87 do 119 definiują funkcjęgo()
, która wysyła żądanie do kranu za pośrednictwem usługi internetowej JSON.
konstruujeJSONObject
poprzez podanie adresu portfela żądającego (walletaddress)
I ilości ETH, którą chce otrzymać (myrequest)
.
wywołanie usługi internetowej do/sendethers
zostało wykonane poprzez podanieJSONObject
. Następnie żądający czeka, a usługa internetowa powróci, aby powiedzieć żądającemu, że jego żądanie ETH zostało spełnione.
Co dalej?
kody źródłowe dla tych projektów można znaleźć w moim repozytorium Github.
to zakończenie serii samouczka Ethereum Kran, dziękuję za spędzanie czasu i moje szczere przeprosiny za podjęcie blisko 10 miesięcy, aby zakończyć tę serię!
Jeśli podobał Ci się ten samouczek, być może chciałbyś również przeczytać:
- głosowanie na Blockchain: implementacja Dapp do głosowania na Ethereum.
- minimalny opłacalny portfel mobilny Ethereum: Szablon oparty na React Native, który zbudowałem dla projektów wymagających mobilnego portfela Ethereum.
- wdrożyć prywatny Blockchain Ethereum w 10 minut z Kaleido: uruchomienie prywatnego Blockchain Ethereum w mgnieniu oka.
- Smart Contract wyjaśnione przez demonstrację: demo usługi Escrow Smart Contract Dapp – moim zdaniem najszybszy sposób na Wyjaśnienie laikowi, czym jest Blockchain.
- urządzenie uziemiające Ethereum IOT Kid: moja próba włączenia Blockchain do Internetu Rzeczy.
- Loteria jako inteligentny kontrakt: Rozproszona Loteria, próba zbudowania systemu loteryjnego na Blockchain Ethereum.
przeczytaj również
- najlepszy Bot transakcyjny Crypto
- najlepsze oprogramowanie podatkowe Crypto
- najlepsze platformy transakcyjne Crypto
- najlepsze platformy pożyczkowe Crypto
- najlepsze narzędzia do analizy Blockchain
- przewodnik arbitrażu kryptograficznego: jak zarabiać jako początkujący
- Najlepsze wykresy kryptograficzne tool
- ledger vs trezor
- jakie są najlepsze książki, aby dowiedzieć się o Bitcoin?
- 3commas Review
- AAX Exchange Review | Referral Code, opłata handlowa, plusy i minusy
- Deribit Review | opcje, opłaty, API i Testnet
- ftx Crypto Exchange Review
- ngrave ZERO review
- Bybit Exchange Review
- 3commas vs Cryptohopper
- najlepszy portfel sprzętowy Bitcoin
- najlepszy portfel Monero
- Ledger Nano S vs X
- Bitsgap vs 3commas vs quadency
- Ledger Nano S vs trezor One vs trezor T vs Ledger Nano X
- blockfi vs Celsius vs HODLNAUT
- Recenzja Bitsgap — bot do handlu kryptowalutami, który ułatwia Money
- Quadency Review-Crypto Trading Bot stworzony dla profesjonalistów
- Primexbt Review / Leverage Trading, Fee and Covesting
- Ellipal Titan Review
- SecuX Stone Review
- Blockfi Review / Earn up to 8.6% interests on your Crypto