我是NODE.JS开发的初学者,我正在访问API,我希望在Web浏览器中显示该值

时间:2017-01-03 03:54:33

标签: javascript node.js api

我目前是一个Web应用程序,我很难弄清楚如何在Web浏览器中显示输出而不是在终端中显示它

    `var optionsget = {
  host : 'localhost',
  port : 8888,
  path : '/getname.php/name?primary_name=lance'
}


console.log('Options prepared: ');
console.log(optionsget);
console.log('do the get call');


var reqGet = http.request(optionsget, function(res){
  console.log('statusCode:', res.statusCode);
  res.on('data', function(d){
    console.info('Get result: \n');
    process.stdout.write(d);
    console.info('\n\nCall completed');

  });
});

reqGet.end();
reqGet.on('error', function(e){
  console.error(e);
});

var optionsgetmsg = {
  host : 'localhost',
  port : 8888,
  path : '/get.php/name?primary_name=lance',
  method : 'GET'
};
console.log('Options prepared: ');
console.log(optionsgetmsg);
console.log('do the get call');

var reqGet = https.request(optionsgetmsg, function(res) {
    console.log("statusCode: ", res.statusCode);

    res.on('data', function(d) {
        console.info('GET result after POST:\n');
        process.stdout.write(d);
        console.info('\n\nCall completed');
    });

});

reqGet.end();
reqGet.on('error', function(e) {
    console.error(e);
});

这是我的代码,我正在访问一个产生json数据的api。

3 个答案:

答案 0 :(得分:0)

您正在寻找像ExpressJS / Hapi或Koa这样的网络框架。

当你在浏览器中导航到Hello World!时,ExpressJS下面的example会输出localhost:3000/

var express = require('express')
var app = express()

app.get('/', function (req, res) {
  res.send('Hello World!')
})

app.listen(3000, function () {
  console.log('Example app listening on port 3000!')
})

答案 1 :(得分:0)

有助于查看您当前在节点后端使用的内容以及如何将数据发送到终端输出,但这里是一个使用res / response对象将数据发送回Web浏览器的路由示例快递。

如果您正在检索数据,则此代码段假定使用express和工作数据库连接。

如果您可以发布当前代码和您正在检索的详细信息,那么提供实际代码示例会更容易

app.get('/yourPath', function(req,res){
   //this sends your message to the console
   console.log("Getting data");

   //query to retrieve all documents in collection
   query = {};

   //finds all documents in "yourcollection", passes in query, 
   //callback handles error messages and result (r)  
   db.collection("yourcollection").find(query,
    function(err,r){
      if (err) throw err;

      //preview result (r) in console
      console.log(r);

      //send result (r) to front end  or API using response object
      res.send(r);
    });
});

答案 2 :(得分:0)

您可以使用以下代码。

const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});
  1. 打开记事本
  2. 将上面的代码复制并粘贴到文件中。
  3. 以.js扩展名为app.js
  4. 保存
  5. 执行命令节点app.js
  6. 打开浏览器并输入http://127.0.0.0:3000
  7. 你可以在网络浏览器上看到你的话语