Gọi Hàm Trong Smart Contract Với Web3 và Nodejs

ethereum-web3-nodejs

Thông thường khi deploy smart contract sử dụng Ethereum Remix chúng ta có thể gọi hàm trực tiếp trên Remix để kiểm tra các hàm trong smart contract. Tuy nhiên, trong vài trường hợp server không cho phép dùng trình duyệt hoặc internet thì không thể dùng Remix. Trong trường hợp này chúng ta có thể viết code đơn giản để gọi hàm trong smart contract với thư viện Web3

Khai báo thư viện
const Web3 = require('web3');
var fs=require('fs');

/* Kết nối đến ethereum node */
const etherUrl = "http://IP:Port";
var jsonFile='abi.json';// abi file
var abi=JSON.parse(fs.readFileSync(jsonFile));
let web3 = new Web3();
web3.setProvider(new web3.providers.HttpProvider(etherUrl));
var contractAddress="0xa50397154a23A8FDCF59B1326A80fa51934DcCBC";
let contractInstance = new web3.eth.Contract(abi, contractAddress);
//GET DATA
try{  contractInstance.methods.MethodName(parameter).call().then(console.log)
}
catch (error) { 
	return res.send(error.message);

}

Output

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *