首页 > 解决方案 > 使用 Nodejs 中的请求模块从 URL 获取数据时获取“未定义”

问题描述

我试图简单地使用请求模块并从 API 获取数据。即使我得到“未定义”,看起来也没有错误。我很困惑,因为它是因为任何 VS 代码设置或什么。我使用的编辑器是-VS Code

Dependency list - 
{
"name": "weather-app",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
 "test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
  "http": "0.0.0",
  "request": "^2.88.0"
  }
 }

节点和 npm 版本 - C:\Users\lenovo>node -v v10.16.0

C:\用户\联想>npm -v 6.9.1-next.0

const request = require('request')
const url = 'https://api.darksky.net/forecast/5a6c29e0d9c879cef11d4d5de29d7d78/37.8267,-122.4233'
request({ url: url }, (error, response) => {
console.log(response)
})

我得到的输出 - 未定义。

我应该得到的输出——来自 API 请求的 JSON 数据

标签: javascriptnode.js

解决方案


我对此进行了检查,它工作正常,请更正您的代码并重试

const request = require('request')
const url = 'https://api.darksky.net/forecast/5a6c29e0d9c879cef11d4d5de29d7d78/37.8267,-122.4233'
request({ url: url }, (error, response) => {
    if (error) {
        console.log(error)
    }
    console.log(response.body)
})

推荐阅读