[NodeJS] API 사용 법 6편 예약 포스팅 해보기 -3편 (매일매일 글쓰기)

in hive-101145 •  3 years ago 

안녕하세요 ayogom 입니다.
어제는 글 수정 하는 방법과 한글로 다시 좀 변환하는 방법에 대해서 이야기를 해봤는데요 혹시나 아직 안 읽으셨다면 이전 글 부터 조금 읽어보시는 것을 추천해 드립니다!

어제는 1회성의 몇분, 혹은 몇시간 후에 글이 작성되는 것을 썻다면 오늘은 매일매일 올라가는 글을 써볼 생각입니다. 그럼 일단, 코드를 확인 해야겠죠

var steem = require('steem');

const timeout = setTimeout(()=>{
    var wif = "**************";
    var parentAuthor = "";
    var parentPermlink = "test";
    var author = "jerry.van.lee"
    var permlink = "nodejs-test-01"
    var title = "Nodejs 예약 포스팅 테스트 중입니다."
    var body = "이렇게 넣으면 예약 포스팅에 대한 테스트가 됩니다. \n 엔터 대신에는 ``\n`` 을 넣어서 사용하시면 됩니다. 잘 되는지 볼까요?"
    var jsonMetadata =  {"tags":["test"],"app":"steemcoinpan\/0.1","format":"markdown"};

    steem.broadcast.comment(wif, parentAuthor, parentPermlink, author, permlink, title, body, jsonMetadata, function(err, result) {
            console.log(err,result);                                
    }); 
}, 60000);


오늘은 너무나 쉽습니다.
저 코드에서 setTimeoutsetInterval 로 변경을 해주시면 됩니다.

그게 무슨 의미냐,
setTimeout 이 특정 시간 후에 소스 코드가 실행한다면
setInterval 은 특정 시간 후에 반복 실행 입니다.

쉽게 그림으로 표현해 보면

setInterval은 반복을 한다. 쉽죠?
그럼 그 반복주기를 하루 즉, 60초 * 60분 * 24시간으로 계산을 하면 86400 이면 하루가 지나게 됩니다. 여기서 단위를 맞춰야 하기 때문에 *1000을 해줘서 86,400,000 의 반복 주기를 가져가게 되면 반복 포스팅이 됩니다.

코드로 봐볼까요

var steem = require('steem');

const timeout = setInterval(()=>{
    var wif = "**************";
    var parentAuthor = "";
    var parentPermlink = "test";
    var author = "jerry.van.lee"
    var permlink = "nodejs-test-01"
    var title = "Nodejs 예약 포스팅 테스트 중입니다."
    var body = "이렇게 넣으면 예약 포스팅에 대한 테스트가 됩니다. \n 엔터 대신에는 ``\n`` 을 넣어서 사용하시면 됩니다. 잘 되는지 볼까요?"
    var jsonMetadata =  {"tags":["test"],"app":"steemcoinpan\/0.1","format":"markdown"};

    steem.broadcast.comment(wif, parentAuthor, parentPermlink, author, permlink, title, body, jsonMetadata, function(err, result) {
            console.log(err,result);                                
    }); 
}, 1000*86400);

마지막에 계산을 쉽게 하기 위해 1000*86400 으로 나눠서 작성 했습니다.

자 이러면 끝입니다.
하지만 주의할 사항이 있죠? 뭘까요? 제가 어제 주소가 같으면 어떻게 된다고 했죠? 글이 수정되어버린다고 했습니다. 즉 완성 코드는 저렇게 짜는 것이 아니라 permlink 값을 변경해 줘야 합니다.

   var permlink = " "
   var value = 0
   value ++;
   permlink = "nodejs-test-"+value

이렇게 만 하면 매번 호출시마다 value 값이 플러스 되기 떄문에 0부터 순차적으로 올라가게 됩니다

그럼 매일매일 포스팅이 올라갑니다. 스팀 농사 지을 수 있겠네요?
쉽죠? 이해가 안되는 내용이 있으면 언제든 댓글을 남겨주세요

내일은 블록을 실시간으로 체크 하는 코드를 소개해드리겠습니다.

작성 예정인 글 List

  • Nodejs 를 이용한 스팀 API 사용해보기 (계속)
  • SCT 포스팅피 납부 방법

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

스팀잇 기본 이야기

스팀잇 심화 이야기

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

해킹과 관련된 이야기

개발과 관련된 이야기
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:  

@ayogom transfered 3 KRWP to @krwp.burn. voting percent : 6.69%, voting power : 60.28%, steem power : 1775799.01, STU KRW : 1200.
@ayogom staking status : 650 KRWP
@ayogom limit for KRWP voting service : 1.3 KRWP (rate : 0.002)
What you sent : 3 KRWP
Refund balance : 1.7 KRWP [54068935 - c98e5fc49c283060a5ca81942d2f829075b96a11]

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

WWW.QOO10.COM

start success go! go! go!

와!! 예약포스팅!!! 하고 들어왔다가.... 코드보고 좌절 했습니다 ^^;;;;

제목은 한국어인데 내용은 외계어군요ㅎㅎ코드 공부도 해야하나...