淺談區塊鏈開發數字貨幣過程中環境變數問題

來源:互聯網
上載者:User

區塊鏈愛好者(QQ:53016353)

一、確認基礎環境  


作業系統:


建議採用虛擬機器形式安裝Ubuntu 14.04 Desktop 64bit


其他動作系統可以參考本文自行實驗。


Node.js:


Blockchain.info要求 node >= 0.12.0 npm >= 2.12.0, < 3.0.0


查看現有node.js版本的命令參考如下:
apt-cache policy nodejs
node -v
npm -v


如果尚未安裝nodejs,可以參考下述命令進行安裝:
sudo add-apt-repository ‘deb 
sudo apt-get update
sudo apt-get install nodejs


如果已安裝的nodejs版本不符合上面的要求,可從nodejs.org網站上手工下載較新版本(目前建議用0.12.10版本)的壓縮包,解壓後用命令列進入解壓後的目錄,輸入以下命令覆蓋舊版本
sudo cp bin/* /usr/bin/
sudo cp -r lib/include /usr/include/
sudo cp -r lib/node_modules /usr/lib/
node -v
npm -v


二、申請apicode:
訪問Blockchain.info的下述網址申請介面授權碼(apicode):


提交申請後,等待兩個工作日後可以收到內含介面授權碼的郵件,將其中的Code對應的後面字串複製儲存好,後續的安裝配置和開發都需要用到。


三、安裝Blockchain Wallet API服務程式
在命令列下輸入以下命令:
sudo npm install -g blockchain-wallet-service


檢查所安裝的Blockchain Wallet API版本:
blockchain-wallet-service -V


如果需要更新到最新版本,可以輸入以下命令:
sudo npm update -g blockchain-wallet-service


 


四、配置Blockchain Wallet API服務程式
輸入以下命令啟動WalletApi服務:
blockchain-wallet-service start –port 3000


1.建立一個新錢包賬戶


需輸入以下命令:


curl “
其中: YourWalletPassword是給新錢包設定的密碼,一般用英文數字組合,長度在8位字元以上就可以。
YourApiCode是前面申請的介面授權碼,複製到這裡填上就行。
YourWalletName是給新錢包起的名稱,一般用英文數字組合


如果操作成功,會顯示結果類似: {“guid”:”xxxxxxxx-xxxxxx-xxxxxxx-xxxxxxxx”,”address”:”xxxxxxxxxxxxxxxxxxxxx”,”label”:”xxxxx”}
將其中的錢包賬戶標識guid和錢包地址address都記下來,後續操作需要用到。
這裡顯示的address對應的就是新錢包的比特幣地址,可以從別的比特幣錢包向這個新地址發送少量比特幣(比如0.01 BTC)用於後續測試。
註:獲得少量比特幣可以從國內的一些比特幣證券交易所用人民幣來購買然後轉賬到自己的比特幣錢包地址即可。國內常用的證券交易所有:比特幣中國,位元時代,okcoin等,從網上搜尋下即可瞭解到具體操作方法。


2.測試擷取錢包餘額


需輸入以下命令:
curl “
其中: YourGuid是前面建立錢包賬戶時獲得的guid標識
YourWalletPassword是前面設定的錢包密碼
YourApiCode是前面申請的介面授權碼。


如果操作成功,會顯示結果類似: {“balance”:xxxxxxx}
其中的balance是一個整數,單位為聰,1聰=0.00000001 BTC


 


五、安裝API的用戶端支援庫
本文以Node.js為例,Blockchain.info也提供另外多種語言的API庫如PHP,JAVA,.NET(C#),Ruby,Python等,讀者可以自行參考選用。


在命令列下輸入以下命令:
sudo npm install –save blockchain.info


關於API的node支援庫的詳細說明: 
 


六、編寫第一個程式“Hello,Bitcoin”
 


第一個樣本程式HelloBitcoin.js源碼如下:
/****************** START *********************/
//Hello Bitcoin Demo of node.js
console.log(‘Hello, Bitcoin.’);


//init wallet object
var MyWallet = require(‘blockchain.info/MyWallet’);
var options = { apiCode: ‘你申請的ApiCode’, apiHost: ‘http://localhost:3000′ };
var wallet = new MyWallet(‘錢包Guid’, ‘錢包密碼Password’, options);


//show balance
wallet.getBalance().then(function (balance) { console.log(‘Wallet balance is %d!’, balance); });


/********************* END ************************/


將你前面獲得的相關配置參數包括apicode,guid和password填入以上代碼中,儲存後即可運行: node HelloBitcoin.js


在此程式的基礎上,經過對相關API的瞭解,我們可以進一步開發出更多功能,如查詢錢包地址清單,發送比特幣,發送特定交易資料包(如多重簽名資料)等等,後續我們PPkPub將深入介紹。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.