javascript - node-fetch 仅返回待处理的 promise

标签 javascript node.js promise

我正在试用 node-fetch我得到的唯一结果是:

Promise { <pending> }

我该如何解决这个问题,以便获得完整的 promise ?

代码:

var nf = require('node-fetch');

nf(url).then(function(u){console.log(u.json())})

最佳答案

您的代码的问题是 u.json() 返回了一个 promise

您还需要等待新的 Promise 解决:

var nf = require('node-fetch');

var url = 'https://api.github.com/emojis'

nf(url).then(
  function(u){ return u.json();}
).then(
  function(json){
    console.log(json);
  }
)

对于实际代码,您还应该添加 .catch 或 try/catch 以及一些 404/500 错误处理,因为除非发生网络错误,否则 fetch 总是成功的。状态码 404 和 500 仍然可以成功解决

关于javascript - node-fetch 仅返回待处理的 promise ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41111411/

相关文章:

javascript - 将纬度/经度转换为像素坐标?

javascript - 无法在 Heroku 上使用 Node 运行 Express

node.js - React.js 是否需要有 node_modules 文件夹才能运行?

javascript - 向特定的套接字 ID 发送私有(private)消息

javascript - 将日期发送到 wcf 休息服务

javascript - 展开/折叠全部包含嵌套的 Accordion 和非 Accordion 项目 : BOOTSTRAP

node.js - 我们如何将winston日志写入SQL Server?

node.js - 为什么我不能将 Promise.resolve 与渗透实例一起使用?

Javascript 模块化 Promise 链乱序

ember.js - Ember - 异步计算属性或观察者?