게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
nodeJS 질문] sync 관련
게시물ID : programmer_22265짧은주소 복사하기
작성자 :
추천 : 0
조회수 : 485회
댓글수 : 2개
등록시간 : 2018/04/07 15:11:57
옵션
  • 본인삭제금지

https 로 데이터받아오려는데 https로 요청하는 메소드 내부에서는 데이터를 저장하고 사용할 수 있는데, 통신인 끝난 이후에 대해서는 데이터가 저장되지 않습니다.

예를들어,
----------------------------------------
let data = '';

https.request(options, (res)=>{
   ...

   data = something; // save some data

}).end();

console.log(data);   // resut : null;
----------------------------------------
이와같은 경우에는 data가 초기값인 null이됩니다.
이유는 request가 async로 동작하여 console 보다 항상 나중에 수행됩니다.

한 가지 편법으로 request를 한번 더 요청해서 sync를 맞추면 data에 값이 저장되긴하는데, 더 좋은 방법은 없을까요?

현재 사용해 본 방법들은 아래와 같습니다.
1. 얉은/깊은 복사 (싱크문제라 당연히 불가)
2. sleep (안먹힘)
3. asyn, await (불가능)


전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호