사용

2014-04-18 8 views
0

내가 https://github.com/crazytoad/meteor-collectionapi사용

데스크톱 클라이언트가 불규칙한 시간 간격으로 이미지를 생성하고 난 단지 디스플레이로 유성 사이트를 원하는에 HTTP 요청을 통해 데스크톱 클라이언트와 통신하는 유성 응용 프로그램을 짓고 있어요 유성의 이미지 모음 가장 최근에 생성 된 이미지 (이상적으로 실시간). 필자의 초기 아이디어는 PUT 요청을 base64 imagedata와 함께 싱글 톤 컬렉션에 사용하는 것이었지만 웹 브라우저에서 해당 데이터를 이미지로 변환하는 방법을 모른다. 참고 : 이미지는 모두 매우 작으며 (1MB 미만) gridFS를 사용하면 불필요합니다.

나는이 생각이 완전히 틀릴 수 있다는 것을 알고 있습니다. 그래서 내가 완전히 잘못된 길에 있다면, 더 나은 행동 방안을 제안하십시오.

답변

3

적절한 MIME 형식으로 이미지를 제공하기 위해 미들웨어를 작성해야합니다. 예 :

WebApp.connectHandlers.stack.splice (0, 0, { 
    route: '/imageserver', 
    handle: function(req, res, next) { 

    // Assuming the path is /imageserver/:id, here you get the :id 
    var iid = req.url.split('/')[1]; 

    var item = Images.findOne(iid); 

    if(!item) { 
     // Image not found 
     res.writeHead(404); 
     res.end('File not found'); 
     return; 
    } 

    // Image found 
    res.writeHead(200, { 
     'Content-Type': item.type, 
    }); 
    res.write(new Buffer(item.data, 'base64')); 
    res.end(); 

    }, 

});