const TronWeb = require('../../dist/TronWeb.node.js');

const fullNode = 'https://api.shasta.trongrid.io';
const solidityNode = 'https://api.shasta.trongrid.io';
const eventServer = 'https://api.shasta.trongrid.io';
const privateKey = 'PK는 자기꺼 넣습니다.';

const app = async () => {
const tronWeb = new TronWeb(
    fullNode,
    solidityNode,
    eventServer,
    privateKey
);
tronWeb.setDefaultBlock('latest');

const nodes = await tronWeb.isConnected();
const connected = !Object.entries(nodes).map(([name, connected]) => {
    if (!connected)
        console.error(`Error: ${name} is not connected`);
        return connected;
    }).includes(false);

    if (!connected)
        return;

    const account = await tronWeb.createAccount();
    const isValid = tronWeb.isAddress(account.address);
    console.group('\nGenerated account');
    console.log('- Private Key:', account.privateKey);
    console.log('- Public Key: ', account.publicKey);
    console.group('Address')
    console.log('- Base58:', account.address);
    console.log('- Hex:   ', account.address);
    console.log('- Valid: ', isValid, '\n')
    console.groupEnd();
    console.groupEnd();
};
app();
 

앞에 설치 후 node ./example/server 실행 해보면 쫙 나오는데

하나 하나 분석해서 뜯어 보도록 하자.

nodejs는 Front쪽인데 ,,, 백엔드쪽 역할을 하다보니

자바스크립트 원래 클라이언트 단에서 실행된다.

 

그러다 보니 동기, 비동기 이거 굉장히 애를 먹인다.

한줄 실행되고 다음줄 실행되어야되는데 ,, 좍 다 실행 시킬려구 하니 문제

그래서 저렇게 동기화 시킬부분은 따로 묶어서 그 역할을 수행 하도록 한다.

파란색 부분이 그 역할을 수행하는 부분이다.

 

소스는 tronWeb.createAccount() 새로운 계정 만들어서 뿌려주는 역할이다.

회원 가입할때 같이 써어서 그 결과값을 DB에 넣으면 된다.


 

 

root@tkpark-VirtualBox:~/tron-web/examples/server# nodejs index.js

Generated account
  - Private Key:

 09DDA582A742199A60240AA0CE4EBEFDEA06D3A7B6CCC339117C46CF6A9A88E3


  - Public Key: 

 04C7E8873084E14483DFABB3FD4C49F934C658A3252C02C936C2B110131EF570

1DA479ED0507219AF05A58AB4F9B875A79F9EA95530378FEE140F4979811451B40
  Address
    - Base58: { base58: 'TPpfzoUb7cqmdr1TbGC3m2zAUkE9URLsy2',
      hex: '4197F48D556BAACA989E636E07A1F71C977FB50B71' }
    - Hex:    { base58: 'TPpfzoUb7cqmdr1TbGC3m2zAUkE9URLsy2',
      hex: '4197F48D556BAACA989E636E07A1F71C977FB50B71' }
    - Valid:  false

root@tkpark-VirtualBox:~/tron-web/examples/server#
 

 

 

'트론' 카테고리의 다른 글

tron-web 분해하기3(getTransactionsFromAddress)  (0) 2018.12.18
tron-web 분해하기2(transactionBuilder.sendTrx)  (0) 2018.12.18
tron-web 설치  (0) 2018.12.17
tronbox 설치  (1) 2018.12.17
트론 shasta 테스트넷  (0) 2018.12.13
블로그 이미지

iesay

,