1
所以我的問題是非常具體的。每當我從我的頁面運行這個位,如果我不輸入我需要在API中搜索的正確標識,我會得到一個錯誤。由於查詢字符串不正確,它不知道該做什麼,因此無法進行有效的API調用。如何重定向到其他頁面?如果出現這樣的錯誤,或者如何阻止它停止該程序?我假設在這裏有一個嘗試抓住,但我嘗試了多種不同的方式,我仍然感到困惑,因爲它不工作。請幫助!我是這個新手...這裏是摘錄。如果「bnetID」不是有效的ID,則代碼的請求部分是發生錯誤的地方。如果它是有效的,它會運行得很好...如何爲我的特定API調用示例做一個try/catch?
// Make a GET request to the /results page (When submit is pressed)
app.get("/results", function(req, res){
// Retrieve bnetID and REGION from the FORM
var bnetID = req.query.bnetID;
var region = req.query.region;
// Replace the # with a -
bnetID = bnetID.replace("#", "-");
// Create the query string
var url = "http://ow-api.herokuapp.com/profile/pc/"+ region +"/"+bnetID;
// Make the API request
request(url, function(err, response, body){
if(err){
console.log(err);
} else {
var playerData = JSON.parse(body);
playerData = findImportantData(bnetID, playerData);
checkIfExists(bnetID, playerData);
res.render("results", {data: playerData});
}
})
});
你是什麼意思? sry我不擅長這種東西,我正在學習......只要達到那個錯誤,程序就會取消,我不希望它做到這一點..每當它不起作用,它只是說rqeuest不能在mybrowser上代理 – Bryan
正確 - 所以發生的是,當出現錯誤'(err)' - >''console.log()'它就是這樣。您可以在該區塊內放置任何您想要的內容,以便您可以根據需要重新路由到其他頁面。 –
'if(err){window.location.href =「https://www.google.com」}'?真的沒關係,做任何你想做的事情。 –