nodejs在浏览器上打印api响应

时间:2017-06-08 03:00:04

标签: node.js api request

我是nodejs或javascript的绝对初学者,请原谅我的低级别问题。我读了一些教程,但找不到在浏览器上打印响应的方法(我正在使用ejs)我能得到的是我可以在控制台上打印它但我不知道如何去做吧。有人可以指引我正确的方式或给我一个片段,以便我可以从中学习吗?

我获取控制台日志结果的方式是:

const express = require('express')
const app = express()
const bcypher = require('blockcypher')
const request = require('request');

app.set('view engine', 'ejs');

request('https://api.blockcypher.com/v1/btc/main/addrs/1DEP8i3QJCsomS4BSMY2RpU1upv62aGvhD/balance', function (error, response, data) {
  if (!error && response.statusCode == 200) {
    console.log(data)
  }
})

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

谢谢

1 个答案:

答案 0 :(得分:2)

因此,由于您不在任何地方发送数据,因此无法在任何浏览器中显示。这是您的server.js文件,因此当服务器运行时,它会发出请求并成功完成,数据将记录在您的控制台中。 要将其发送回浏览器,您需要将其设置为从前端提供请求。一个简单的例子:

app.get('/data', function(req, res){
  request('https://api.blockcypher.com/v1/btc/main/addrs/1DEP8i3QJCsomS4BSMY2RpU1upv62aGvhD/balance', function (error, response, data) {
    if (!error && response.statusCode == 200) {
      console.log(data)
    }
  })
  res.send('Hello browser, here's my data: ', response.body); //replace with your data here
});