2016-03-24 28 views
0

ilk index.ejs göndermek için nasıl http göndermek, nodejs bunodejs sonra geri arama verileri

var express = require('express'); 
var http = require('http'); 
var qs = require('querystring'); 
var router = express.Router(); 

/* GET home page. */ 
exports.index = function(req, res){ 
    var opt = { 
     method: "POST", 
     host: "localhost", 
     port: 8080, 
     path: "/mongoresume/resumeList.json" 
    }; 

    var req = http.request(opt, function (serverFeedback) { 
     if (serverFeedback.statusCode == 200) { 
      var body = ""; 
      serverFeedback.on('data', function (data) { body += data; console.log(data);}) 
          .on('end', function() { res.render("index",body);/*res.send(200, body); */}); 
     } 
     else { 
      res.send(500, "error"); 
     } 
    }); 

    req.on('error', function (e) { 
     console.log('problem with request: ' + e.message); 
    }); 

    // req.write(data + "\n"); 
    req.end(); 

}; 

gibi kod zaman, bu verileri alabilir res.send(200, body); gibi normal kodu kullanabilirsiniz ama endeksi veri göndermek istediğiniz Ben res.render("index",body); gibi kodunu değiştirmek zaman .ejs, yani, bu

enter image description here

Yani hata araçlarının ne hata attı?

cevap

0

İkinci parametreniz res.render işlevine bir nesne olmalıdır. Bir dize (vücut değişkeni) sağlıyorsunuz. Express, elbette başarısız olan ve hata iletinize neden olan bir dize değişkenine özellik eklemeyi dener. documentation about res.render()'a bakın.

+0

teşekkürler çok çok çok !!! gerçekten seni seviyorum çocuklar – tomato

0

Parametre, nesne olarak değil, bir nesne olmalıdır. Bunu deneyin

res.render('index',result:JSON.parse(body)['object name']); 
+0

teşekkürler çok çok çok !!! gerçekten seni seviyorum – tomato

İlgili konular