繁体   English   中英

npm install 请求已被弃用

[英]npm install request has been deprecated

我是 nodejs 的新手,我正在尝试一个简单的任务或程序来构建 API 以从这个网站获取城市的当前天气: https : //openweathermap.org/

我在 POSTMAN 中测试了 get api 并能够给我正确的结果,但是当我已经在 nodejs 中尝试过时,结果是“未定义”

这是代码

const request = require("request");

const url = "api.openweathermap.org/data/2.5/weather?q=London,uk&appid=922a0c3b43f4d078f19599ff2fda6";

request(url, (error, response, body) => {
console.log(body)

})

我知道我应该首先使用这一行安装请求模块

npm install request

但是输出说它已经被弃用了。 难道是不成功的原因? 解决方法应该是什么?

在此处输入图片说明

在执行console.log之前先检查状态代码。 你可以试试这样的

const request = require("request");

const url = "api.openweathermap.org/data/2.5/weather?q=London,uk&appid=922a0c3b43f4d078f19599ff2fda6";

request(url, (error, response, body) => {
   if (!error && response.statusCode == 200) {
        console.log(body) 
   }
})

感谢 David R 的建议,并且能够找到问题是我的 URI 无效

应该在 URI 中附加: http:// 并且它按预期工作。

这是最终的代码

const request = require("request");

const url = "http://api.openweathermap.org/data/2.5/weather?q=London,uk&appid=922a0c3b43f4d078f19599ff2fda6";

request(url, (error, response, body) => {
    if (!error && response.statusCode == 200) {
        console.log(body) 
    }
    else
    {
        console.log(error)
    }
})

此外,如果您正在寻找一个未被弃用的替代包,POSTMAN 组织已经分叉了请求模块,他们将继续支持它,发布新版本。

www.npmjs.com/package/postman-request

 npm i postman-request

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM