Javascript 设置快速路由时,API调用返回404未找到

Javascript 设置快速路由时,API调用返回404未找到,javascript,api,express,routing,Javascript,Api,Express,Routing,我很难理解如何使用应用程序设置快速路由。请使用和路由器。我从文档中了解到,您可以设置路由器,然后使用app.use()将其传递到路由,并让该路由器处理到该路由的所有路由。有人能帮我理解我的逻辑吗?非常感谢您的帮助 路由 客户电话 根据你的代码,你写了两次“/game”,这意味着你的路线变成了“baseurl:3000/game/game/waiting” 如果您不想更改路线,请更新以下内容: // remove this : router.get('/game/waiting', functio

我很难理解如何使用
应用程序设置快速路由。请使用
路由器
。我从文档中了解到,您可以设置路由器,然后使用
app.use()
将其传递到路由,并让该路由器处理到该路由的所有路由。有人能帮我理解我的逻辑吗?非常感谢您的帮助

路由 客户电话
根据你的代码,你写了两次“/game”,这意味着你的路线变成了“baseurl:3000/game/game/waiting”

如果您不想更改路线,请更新以下内容:

// remove this : router.get('/game/waiting', function(req, res, next) {
router.get('/waiting', function(req, res, next) {
    if (waiting_user !== null) {
        console.log('lets put you two in game');
    } else {
        console.log('you need to wait for another player');
    }
})
var play = () => {
    var username = username_input.val();

    if (isUsernameValid(username)) {
        $.ajax({
                url: '/game/game/waiting',  /* remove this : '/game/waiting', */
                type: 'GET',
            })
            .done(function() {
                console.log("success");
            })
            .fail(function() {
                console.log("error");
            })
            .always(function() {
                console.log("complete");
            });
    } else {
        alert('Put in a valid username');
    }
};
但如果您想在客户端呼叫时更改,您可以更新以下内容:

// remove this : router.get('/game/waiting', function(req, res, next) {
router.get('/waiting', function(req, res, next) {
    if (waiting_user !== null) {
        console.log('lets put you two in game');
    } else {
        console.log('you need to wait for another player');
    }
})
var play = () => {
    var username = username_input.val();

    if (isUsernameValid(username)) {
        $.ajax({
                url: '/game/game/waiting',  /* remove this : '/game/waiting', */
                type: 'GET',
            })
            .done(function() {
                console.log("success");
            })
            .fail(function() {
                console.log("error");
            })
            .always(function() {
                console.log("complete");
            });
    } else {
        alert('Put in a valid username');
    }
};

将组合指定给
app.use()
router.get()
的路径(
'/game'+'/game/waiting'
)。那么,您已经定义了路径
GET/game/game/waiting
。嘿,这很有效。如果你发布一个答案,我可以接受