2014-09-07 4 views
0

익스프레스 프레임 워크에서 node-twitter 모듈을 사용하려고합니다. 나는 꽤 노드에 익숙하지 않고 기본 라우팅을 이해하고 비취 템플릿을 렌더링하고 패키지를 설치하는 등 매우 많은 패키지를 보게되어 매우 기쁩니다. 그러나 세부 사항에 들어가면 정말 그렇지 않습니다. 익스프레스 프레임 워크에서 이들을 사용하는 방법을 이해합니다.익스프레스 프레임 워크의 노드 - 트위터

현재 노드 트위터 모듈 (https://github.com/desmondmorris/node-twitter)을 사용 중이며 스트리밍 API를 사용하고 싶습니다. 다음은 스트리밍 API를 시작하는 데 필요한 코드 스 니펫입니다. 표현할 때 필요한 모든 열쇠를 얻었습니다. 그래서; 내 질문은, 어떻게이 경로를 전달하는 것입니다?

var util = require('util'), 
    twitter = require('twitter'); 
var twit = new twitter({ 
    consumer_key: '', 
    consumer_secret: '', 
    access_token_key: '', 
    access_token_secret: '' 
}); 


twit.stream('user', {track:'nodejs'}, function(stream) { 
    stream.on('data', function(data) { 
     console.log(util.inspect(data)); 
    }); 
    // Disconnect stream after five seconds 
    setTimeout(stream.destroy, 5000); 
}); 

지금까지 내가 아는 한 두 가지 라우팅 방법이 있습니다. 하나는 템플릿을 렌더링하고 다른 하나는 직접 응답을 보내는 것입니다.

app.get('/',function(req, res){ 
res.render ('index'); 
}); 

app.get('/test',function(req,res){ 
res.send('this is a test'); 
}) 

이제 어떻게 트위터 스트리밍 API를위한 경로를 설정 했습니까? 조언을 부탁드립니다.

답변

1

둥근 구멍에 사각형의 못을 끼워 넣으려고하는 것 같습니다.

트위터 스트리밍 모듈은 트위터에서 동 기적으로 데이터를 스트리밍하는 반면 사용자의 요청은 사이트에 대한 HTTP 요청을 통해 시작됩니다.

트위터 스트리밍 모듈을 통해 들어온 트윗 중 일부가 경로로 처리되는 http 요청을 제공하려면 stream.on ('데이터'섹션에서 수집 한 트윗을 동일한 레벨에서 초기화하는 배열로 푸시 할 수 있습니다.

또 다른 방법은 socket.io와 같은 비동기 통신 채널을 사용하고 연결된 사용자가 올 때 트윗을 전달하는 것입니다.