web3.js
Last updated
Last updated
web3.js là một thư viện JavaScript cho phép các nhà phát triển tương tác với các mạng chuỗi khối tương tích với EVM như Klaytn. Với các tính năng hỗ trợ của Klaytn dành cho Sự tương đương với Ethereum, các công cụ của Ethereum như web3.js có thể được dùng trên Klaytn mà không cần thực hiện những sửa đổi đáng kể.
Do đó, các nhà phát triển có thể tận dụng tính tương thích này và dùng thư viện web3.js để tương tác với một nút Klaytn.
Trong hướng dẫn này, bạn sẽ tìm hiểu cách để dùng thư viện web3.js để gửi một giao dịch, đọc dữ liệu từ chuỗi khối và tương tác với một hợp đồng cõ sẵn trên Mạng Klaytn.
Trình biên tập mã: một trình biên tập mã nguồn như VS-Code.
Metamask: được dùng để triển khai hợp đồng, ký giao dịch và tương tác với hợp đồng.
Điểm cuối RPC: bạn có thể nhận từ một trong những Nhà cung cấp điểm cuối được hỗ trợ.
KLAY thử nghiệm từ Vòi: nạp tiền vào tài khoản với một lượng KLAY vừa đủ.
Để bắt đầu, bạn cần tạo một thư mục dự án để chứa các tập tin được tạo trong hướng dẫn này.
Để cài đặt web3.js, hãy chạy lệnh sau trong giao diện dòng lệnh:
Trong phần hướng dẫn này, chúng ta sẽ tạo một số tập tin mã lập trình để gửi giao dịch, đọc dữ liệu từ chuỗi khối và tương tác với một hợp đồng thông minh có sẵn. Để bắt đầu, bạn cần biết cách để khởi động web3.js cho từng tập tin mã lập trình.
Nhập web3
vào tập tin mã lập trình.
Sau khi nhập web3 thành công, bạn cần kết nối với Klaytn bằng cách khởi tạo một đối tượng web3.js với một URL PRC của mạng lưới Klaytn. Thêm mã dưới đây vào mã đã có sẵn:
Ngoài ra, bạn cần thêm vào khóa riêng tư của mình để ký các giao dịch. Thêm mã dưới đây vào mã đã có sẵn:
Để đọc dữ liệu từ chuỗi khối, hãy tạo một tập tin read.js
trong thư mục dự án bằng cách chạy lệnh sau:
Sau khi tạo tập tin này, hãy khởi động web3
như đã thực hiện trong phần khởi động
. Trong phần này, bạn sẽ tìm hiểu cách đọc dữ liệu từ chuỗi khối (ví dụ như blockNumber, số dư KLAY).
Để xem hành động này, hãy dán mã sau vào read.js
.
Kết quả đầu ra
Để chạy mã lập trình và đọc dữ liệu từ chuỗi khối, bạn có thể chạy lệnh sau trong giao diện dòng lệnh:
Nếu giao dịch thành công, bạn sẽ thấy số khối và số dư KLAY của người dùng được ghi lại trong giao diện dòng lệnh của mình.
Để gửi giao dịch đến chuỗi khối, hãy tạo một tập tin send.js
mới trong thư mục dự án bằng cách chạy lệnh sau:
Sau khi tạo tập tin này, hãy khởi động web3
như đã thực hiện trong phần khởi động
. Trong phần này, bạn sẽ tìm hiểu cách để gửi một giao dịch đến chuỗi khối, ví dụ như gửi KLAY đến một địa chỉ.
Để xem hành động này, hãy dán mã sau vào send.js
.
Kết quả đầu ra
Để chạy mã lập trình và gửi dữ liệu đến chuỗi khối, bạn có thể chạy lệnh sau trong giao diện dòng lệnh:
Nếu giao dịch thành công, bạn sẽ thấy biên lai giao dịch được ghi lại trong giao diện dòng lệnh của mình.
Để tương tác với một hợp đồng thông minh có sẵn trên Klaytn, hãy tạo một tập tin interact.js
trong thư mục dự án bằng cách chạy lệnh sau:
Sau khi tạo tập tin này, hãy khởi động web3
như đã thực hiện trong phần khởi động
. Trong phần này, bạn sẽ dùng web3.js để tương tác với một hợp đồng thông minh trên Klaytn bằng cách khởi tạo một đối tượng Contract
bằng ABI và địa chỉ của một hợp đồng đã triển khai.
Vì mục đích của hướng dẫn này, một hợp đồng lưu trữ đơn giản đã được lập và triển khai trên Remix IDE. Chúng ta sẽ gửi một giao dịch đến hợp đồng bằng cách gọi hàm store
và đọc dữ liệu từ đó bằng cách gọi hàm retrieve
.
Để xem hành động này, hãy dán mã sau vào interact.js
.
Kết quả đầu ra
Để chạy mã lập trình và tương tác với hợp đồng thông minh, bạn có thể chạy lệnh sau trong giao diện dòng lệnh:
Nếu giao dịch thành công, trong giao diện dòng lệnh của mình, bạn sẽ thấy hàm băm của giao dịch và giá trị được lưu trữ.
Để được hướng dẫn sâu hơn về web3.js, vui lòng tham khảo tài liệu về web3.js. Ngoài ra, bạn có thể tìm thấy cách triển khai mã đầy đủ cho hướng dẫn này trên GitHub