2017-01-03 6 views
0

フロントエンドは/movies/KN3MJQR.mp4のようなURLを要求したときに、私はroutes.jsでGetメソッドは、時間のと呼ばれるn個の番号を取得しますMEANスタック

GETブロックは次のようになり、MEANスタックを持っていますこの

app.get('/movie/:url', function(req, res) { 
     try { 
      var url = req.url.split('/')[2] 
       res.sendfile(moviesFolder + url); 
     #i want to add my logic for incrementing view count here. 

     } catch (e) { 
      console.log(e); 
     } 
    }); 

.mp4の要求が発生するたびに、各ムービーのビュー数を増やすロジックを追加します。私は、上記のように、コードにコメントされた場所に増分ビュー数のロジックを追加して、ストリーミングが発生するたびにgetメソッド全体がn回呼び出されるようにしました。どのようにこのロジックを扱うのですか?

更新:@rsp

if(req.get('Range')===('bytes=0-')){ 
    console.log('first call'); 
}else{ 
    console.log('further call'); 
} 

答えて

1

で答えたように、コードはres.sendfile()は範囲をサポートしているため、エンドポイントが何度も打つことができます同じことを確認すると、クライアントは、部分的なデータの複数のダウンロードを行うことができます。

req.get('Range')で該当するヘッダーを検査して、最初のページか最後のページかを確認できます(開始されたすべてのダウンロードをカウントするか、完了したものだけカウントするかによって異なります)。ヘッダ詳細は

は、以下を参照してください。

関連する問題