没有通配符,快速路线不匹配

时间:2015-07-02 10:23:47

标签: node.js express

我正在使用快递3.我的代码中有一条GET路由,如果我没有在末尾放置*通配符,则该路由不匹配

var express = require('express');
var app = new express();

app.get('/image/upload', function(req, res) {
    console.log(req.params);
    res.send("ok");
});

var port = 3002;
app.listen(port);
console.log("Image Get Server started on port " + port);

代码如上。我想要点击的网址是 http://localhost:3002/image/upload/imageId.jpg

我得到的回复是Cannot GET /image/upload/imageId.jpg

但是,当我在路线的末尾放置一个通配符以匹配

app.get('/image/upload*', function(req, res) {

它有效。我记得没有这些通配符的路线。我错过了什么?

1 个答案:

答案 0 :(得分:1)

你可以试试:

app.get('/image/upload/:name', function (req, res)
    {
        var name = req.params.name;
        try{
            res.send("OK");
        }
        catch(err){
            console.log("Error on: "+name+err);
        }
    });

它适用于我的节点,但不确定它是否与express 3

兼容