Posted at

amazon linuxでNode.jsのNEM開発環境を爆速で整える

More than 1 year has passed since last update.

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();
});