[英]WARN deprecated request@2.88.2: request has been deprecated, npm WARN deprecated har-validator@5.1.5
[英]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.