![](/img/trans.png)
[英]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.