javascript - 如何对我的特定 API 调用示例执行 try/catch?

标签 javascript node.js api try-catch

所以我的问题非常具体。每当我从页面运行此位时,如果我没有输入需要在 API 中搜索的正确 ID,则会收到错误消息。由于查询字符串不正确而无法进行有效的 API 调用时,它不知道该怎么办。当出现类似错误时,我该如何重定向到不同的页面,或者如何防止它停止程序?我假设这里有一个 try catch 但我尝试了多种不同的方式,但我仍然很困惑,因为它不起作用。请帮助!我对此很陌生......这是片段。如果“bnetID”不是有效 ID,则代码的请求部分将发生错误。如果它是有效的,那么它运行得很好......

// 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});
        }
    })
});

最佳答案

如果出现错误,为什么不处理你想做的事情呢?

    if(err){
        console.log(err); // change this to whatever you want to do
    } 

关于javascript - 如何对我的特定 API 调用示例执行 try/catch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45645072/

相关文章:

php - AJAX POST 处理程序导致 "uncaught exception"

javascript - VB.net Geckofx 45 执行 jquery.hide() 没有效果

node.js - 从 Sails.JS 发出 socket.io 事件并使用 Sails.JS 框架在服务器上处理它

java - 提供对字符串形式的所有可用数据的编程访问 : toString()

javascript - 在我的网站中记录基准和错误的最佳方法是什么?

php - 如何在另一个php文件中列出一个php文件的值

javascript - 如何使用三元运算符将类添加到 ejs 中的 HTML 元素

javascript - Node.js 服务器不显示图像

api - 使用 Docker API 创建容器时限制 CPU 使用率

java - java中如何返回自定义Bean类型的空对象?