Node.js에서 실시간으로 JSON 데이터를 가져오는 방법이 있을까요?

조회수 674회

플레이스테이션에서 플레이 중인 게임을 디스코드에 Rich Presence로 표시하고 싶어서 Node.js로 스크립트를 만들었습니다. 하지만 실행 시에만 플레이스테이션 네트워크에서 정보를 불러오기 때문에 스크립트 실행 도중에 플레이스테이션에서 유저의 상태가 변경(오프라인 또는 온라인, 플레이 중인 게임 변경)될 시 반영되지가 않습니다. 아래는 스크립트의 일부분입니다.

// PSN 토큰 확인
await psn.auth(npsso);

console.log('access_token: ' + psn.access_token + '\n' + 'refresh_token: ' + psn.refresh_token + '\n');

// 프로필 정보 JSON 형식으로 불러오기
const profile = await psn.getProfile("Florize_gt");

const username = profile.onlineId;
const titleName = profile.presence.primaryInfo.gameTitleInfo.titleName;
const titleId = profile.presence.primaryInfo.gameTitleInfo.npTitleId;
const platform = profile.presence.primaryInfo.platform;

console.log('Username: ' + username);
console.log('Platform: ' + platform);
console.log('Now Playing: ' + titleName);

// 디스코드 Rich Presence 업데이트      
client.updatePresence({
    state: platform + '에서 플레이 중',
    details: titleName,
    startTimestamp: Date.now(),
    largeImageKey: titleId.toLowerCase(),
    smallImageKey: 'smallimage',
    largeImageText: titleName,
    smallImageText: platform,
    instance: true
});

위와 같이 스크립트에 psn.getProfile이라는 함수가 쓰입니다. pxs-psn-api라는 라이브러리를 가져다 썼는데, 그 라이브러리 안에 request로 PSN에서 JSON을 불러와 파싱하는 과정까지 모두 들어가 있습니다. 그래서 스크립트에서는 파싱된 데이터를 가져다 쓰기만 하면 되는 것입니다. 하지만 그 라이브러리에서 request의 헤더로 Url과 Authentication에 필요한 Token을 필요로 합니다. 이를 어떻게 해야 실시간으로 JSON 데이터를 가져올 수 있을 지 궁금합니다. 해당 라이브러리 링크입니다.
링크

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)