pythonでのNEM開発環境を説明しましたので、次はNode.jsの開発環境の説明です。
今回はサーバを立ち上げてURLでアクセスするとアカウントを作成するところまで行きます。
nvmをインストールします。
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
node.js のインストール
nvm install v8.11.3
必要ライブラリのインストール
npm install nem-library
npm install url
npm install express
npm install body-parser
サーバプログラムです。
nem-libraryをjsで書く方法はDaokaさんに教えていただきました。
TypeScriptじゃなくても動きます。
node.js
const url = require('url');
const express = require('express');
const bodyParser = require('body-parser');
const nem = require("nem-sdk").default;
var app = express();
app.use(bodyParser.urlencoded({extended: false}));
app.use(bodyParser.json());
app.use(function(req, res, next){
res.header("Access-Control-Allow-Origin","*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
})
app.listen(1337);
const nemlibrary = require('nem-library');
const NetworkTypes = nemlibrary.NetworkTypes, Password = nemlibrary.Password, SimpleWallet = nemlibrary.SimpleWallet;
nemlibrary.NEMLibrary.bootstrap(NetworkTypes.TEST_NET);
app.get('/account', (req, res) => {
const password = new Password("password");
const simpleWallet = SimpleWallet.create("simple wallet", password);
res.writeHead(200, {'Content-Type': 'text/plain; charset=utf-8'});
res.write(simpleWallet.address.pretty());
res.end();
});