Solana上部署合約示例


部署程序

第一步是復制代碼。

git clone https://github.com/solana-labs/example-helloworld
cd example-helloworld

完成后,可以設置當前的環境為devnet。這是為Solana開發者們准備的編寫和測試合約的網絡的測試網。

 solana config set --url https://api.devnet.solana.com

接下來,需要為賬戶創建一個密鑰對。這對於在Solana測試網上部署合約來說是必要的。注意:這種存儲密鑰對的方法不安全,應該僅用於demo目的。為了安全,系統將提示你輸入密碼。

 solana-keygen new --force

現在已經創建了一個帳戶,可以使用空投程序來獲取一些SOL通證。需要一些lamports(部分SOL通證)來部智能合約。 該命令請求獲取SOL通證到你新生成的帳戶中:

 solana airdrop 5 

現在已准備好構建 hello world 程序。 可以通過運行以下命令來構建它:

npm run build:program-rust
compiling the program
Compiling the program

程序構建完成后,就可以將其部署到devnet上。上一個命令的輸出將為你提供接下來需要運行的命令,但它應該類似於下面這種:

 solana program deploy dist/program/helloworld.so

最終結果是成功將 hello world 程序部署到devnet上,並且有一個指定的Program Id。這可以在Solana Devnet 瀏覽器上進行檢查。

Deploying the program
Deploying the program
Viewing the deployed program on the Devnet explorer
在Devnet瀏覽器上檢查部署的程序

與部署的程序交互

為了與部署好的程序交互,hello-world代碼庫提供了一個簡單的客戶端。這個客戶端是用Typescript編寫的,使用了Solana的web3.js庫和Solana web3 API。

 

運行客戶端

在運行客戶端從部署的程序中讀取數據之前,還需要安裝客戶端的依賴項。

npm install

這步完成后,可以開啟客戶端。

npm run start

可以從輸出中看到程序成功執行,並且會展示賬戶已經打招呼的次數。再運行一次會增加該數值。

Starting the Hello World client to interact with the deployed program

Hello World客戶端和部署的程序交互


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM