[NodeJS] API 사용 법 2편 보팅을 해볼까?

in SteemCoinPan •  2 years ago 

안녕하세요 ayogom 입니다
어제 [NodeJS] API 사용 법 1편 스팀 라이브러리 설치 에 간단한 계정 조회하는 방법까지 다뤄봤는데요. 오늘은 보팅을 한번 해보려고 합니다. 사실 보팅 API는 매우 간단합니다. 오늘은 주말이기 때문에 빨리 후다닥 글 쓰고 아이와 나가서 놀 생각입니다 ㅎ

다시 메모장을 펴봅니다. (메모장을 사용하지 않고 툴을 사용하셔도 됩니다. 저는 그냥 메모장이 편해서... 정확하게 사용중인 툴은 회사에서도 무료로 사용할 수 있는 Notepad++을 사용하고 있습니다!

var steem = require('steem');

steem.broadcast.vote(wif, voter, author, permlink, weight, function(err, result) {
    console.log(err, result);
});

오늘의 메인 코드는 이게 전부입니다.
스팀라이브러리를 사용하고 vote 하는 API를 호출 합니다

그런데 wif, voter, author, permlink, weight 등 영어 의미는 알지만 어떻게 사용되는지 모를 내용들이 적혀있습니다.

  • Wif : 보팅할 계정의 포스팅 키 값
  • Voter : 보팅할 계정
  • Author : 보팅 받을 계정
  • Permlink : 보팅 받을 포스팅 주소
  • Weight : 보팅 비율

이렇게 적용이 됩니다. 예를들면 어제 제 포스팅을 보팅을 해보려면

https://www.steemit.com/hive-101145/@ayogom/nodejs-api-1

  • Wif : ******************
  • Voter : jerry.van.lee
  • Author : ayogom
  • Permlink : nodejs-api-1
  • Weight : 10000

크게 다른 부분은 없고, Permlink의 경우 스팀잇 주소는 위에 태그값이 포함되어 있지만 사실 그건 제외해도 상관없습니다. 즉 위와 같이 steemit.com/hive-101145/@ayogom/nodejs-api-1 이라고 쓰나 steemit.com/@ayogom/nodejs-api-1 이라고 써도 동일한 결과가 나온다는 것이죠 즉, TAG값은 필수는 아닙니다. 따라서 api를 사용시에 해당 태그 값은 포함 사항이 아닙니다.
그리고 Weight 는 보팅 비율을 의미합니다. 스팀체인에서는 소수점 2자리까지 보팅을 구분하고 있기 때문에 100% 보팅은 10000이 됩니다. 만약 100을 넣는다면 그건 1% 보팅이됩니다.

위의 내용을 바탕으로 코드를 짜보겠습니다.

var steem = require('steem');

steem.broadcast.vote(wif, "jerry.van.lee", "ayogom", "nodejs-api-1", 9999, function(err, result) {
    console.log(err, result);
});

코드에서 무엇인가 단어를 인지할때 그것이 선언(정의)이 된것인지 아닌지가 매우 중요합니다. 프로그래밍은 선언(정의)된 내용만 인지를 합니다. 예를들면 프로그램이 생각 했을 때 ayogom은 무엇인지 정의되지 않은 문자입니다. 따라서 이것을 별도로 정의를 해주던지 아니면 " " 안에 넣어서 구분을 해줘야 합니다.

해당 파일을 저는 broadcast_vote.js 로 저장을 하고

node broadcast_vote.js

정상적으로 트랜젝션이 발생했습니다.
정상적이라는 의미는 signatures 이 되어서 블록체인에 기록이 되었다는 의미 입니다. 이 기록은 53952949 블럭에 3번째 트랜젝션으로 포함되었습니다.

위에 표시한 것 처럼 저는 9999를 보팅 비율을 정의했기 때문에 99.99% 보팅이 된것을 알 수 있었습니다.

참 쉽죠?ㅎㅎㅎㅎ
한번 따라해 보시기 바랍니다.

작성 예정인 글 List

  • Nodejs 를 이용한 스팀 API 사용해보기

누군가에게는 도움이 될 수 있는 글

스팀잇 기본 이야기

스팀잇 심화 이야기

스팀잇 보상과 연결되는 이야기

해킹과 관련된 이야기

개발과 관련된 이야기
Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

보팅 테스트

[US$80.50](▼16%)[SONGJING]SONGJING SJ-125E 제습기 / 송징 SJ-125E 제습기 / 36평적용 / 165W 고출력 / 대용량 물탱크 / 관부가

WWW.QOO10.COM

start success go! go! go!

즐거운 주말 보내세요^^ 5월은 역시 푸르군요~ ㅋㅋ

5월은 날씨가 너무 좋네요 ㅎ

와웅..겁나 신기하네요.

내일은 글쓰기도 한번.. 해보겠습니다 ㄷㄷ ㅎ

@banguri님이 당신을 멘션하였습니다.

https://www.steemit.com/@banguri/mar2z-5-22-2

@ayogom transfered 3 KRWP to @krwp.burn. voting percent : 6.50%, voting power : 70.04%, steem power : 1773311.04, STU KRW : 1200.
@ayogom staking status : 630 KRWP
@ayogom limit for KRWP voting service : 1.89 KRWP (rate : 0.003)
What you sent : 3 KRWP
Refund balance : 1.11 KRWP [53965325 - a295d16cef5531facb8390a830225d842bb04ea2]

안녕하세요 ZZAN 문학 공모전 관련하여 질의드립니다 ㅎㅎ 발표작이 안 된다는 의미는 종전에 써서 인터넷에 포스팅한 적이 있는 것은 전부 안 된다는 뜻인가요?

제가 답변이 어려울 것 같고,
https://open.kakao.com/o/gljh1dRb 카카오톡 zzan 방에 한번 문의해보시기 바랍니다

@banguri님이 당신을 멘션하였습니다.

https://www.steemit.com/@banguri/5-23

보팅하는건 패스!