2017-04-20 42 views
0

即時通訊與我的函數Mrequest有問題,問題是像id和年的數據不會添加到數組。我知道是功能問題,但我無法解決它。 的可能我改變什麼任何想法,所以我的數組結果得到的ID與去年函數沒有返回數據回我的數組

function getContent() { 
      var result = []; 

      async.series([ 
       getDb, 
       getInfos 

      ]); 


      function getDb(done) { 
       //posta 
       var query = "SELECT title , launch_year FROM content WHERE content_genre_id=1 && content_type_id!=2 LIMIT 2;" 
       mysqlConnection.query(query, function(err, data) { 
       result = data; 
       async.each(result, getPelicula, done); 
       }); 
      } 


       function Mrequest(pagina, callback){ 
       request({ 
        url: pagina, 
        method: "GET", 
        json: true, 
       }, callback); 

       } 
     function getPelicula(pelicula, donePelicula) { 
       var peli = pelicula.title; 


       var pagina = "http://api.themoviedb.org/3/search/movie?query=" + peli + "&api_key=3e2709c4c051b07326f1080b90e283b4&language=en=ES&page=1&include_adult=false" 
       setTimeout(function() { 
       Mrequest(pagina, function(error, res, body) { 
        if (error) { 
        console.log("error", error); 
        } else { 
        var control = body.results.length; 
        if (control > 0) { 
         var year_base = pelicula.launch_year; 

         var id = body.results[0].id; 
         var year = body.results[0].release_date; 
         var d = new Date(year); 
         var year_solo = d.getFullYear(); 
         console.log(pelicula); 
         console.log("id",id); 
         console.log("year",year); 
         console.log("year",year_solo); 
         if (year_base == year_solo) { 

         pelicula.id = id; 
         pelicula.year_pagina = year_solo; 
         } else { 

         pelicula.id = -1; 
         pelicula.year_pagina = null; 
         } 
        } 
        } 
       }); 
       }, result.indexOf(pelicula) * 3000); 

       donePelicula(); 
      } 
    getContent(); 
    } 
+0

第一件事叫,我看到您在getContent方法內調用getContent。它要麼是一個無限循環,要麼永遠不會被調用? – Siva

+0

它的工作很好,我沒有得到無限循環。 –

回答

0

它看起來並不像您這樣的請求,因爲的getContent正在從自身內部