在快递中使用url作为slug

时间:2017-03-12 17:24:59

标签: javascript node.js express

我的Express项目中有以下路线:

router.get('/statusCode/:url', function(req, res){
    //finds the http status code of a webpage
    try {
        req.param.url = utils.formatUrl(req.param.url);
    } catch (err) {
        res.render('siteError', {error: "Invalid url"});
    }
    utils.getStatusCode(req.params.url)
    .then(function(statusCode){
        req.statusCode = statusCode;
        renderPage(req, res);
    }).catch(function(err){
        utils.errorHandler(err);
    });
});

我希望能够localhost:3000/statusCode/http://www.google.com,但路由永远不会在服务器上调用。如何将网址映射到此路线?

1 个答案:

答案 0 :(得分:2)

您需要使用encodeURI()对要传递的URI字符串进行编码。然后,您可以在服务器端decodeURI()并将用户重定向到它。