javascript - 在 Express 中使用 url 作为 slug

标签 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,但该路由永远不会在服务器上被调用。我如何映射 url 以转到此路由?

最佳答案

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

关于javascript - 在 Express 中使用 url 作为 slug,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42750682/

相关文章:

返回未定义的javascript字符串长度

javascript - Microsoft Edge 不接受内容安全策略的哈希

node.js - 正文解析器错误。

node.js - React.js 与 Express : Render a simple component on the client-side while using Express as a server?

javascript - JavaScript 中的多个构造函数(重载)

javascript - 我的解决方案是递归的吗? (学习递归)

javascript - 使用javascript访问具有多个值的选择选项标签中的值

node.js - knex js,选择有效但不能删除

javascript - 在node.js下运行UglifyJS产生找不到模块错误

javascript - ExpressJS 子类在回调中缺少继承的属性和属性