【问题标题】:same verb Http in controller different endpoint Sails routes控制器中的相同动词 Http 不同端点 Sails 路由
【发布时间】:2017-05-07 00:44:30
【问题描述】:

我在制作端点时遇到了风帆问题。

我的路线上有这个

'get /user': 'UserController.find',
'get /user/:name': 'UserController.findByName',

以及用户控制器中的两个端点

find: function(req,res,next){
        res.status(200);
        res.json("find");
},
findByName: function(req,res){
        res.status(200);
        res.json("findByName");
}

我正在使用邮递员进行测试,当我向localhost:1337/user/findByName 发出请求时,api 将返回给我

findByName(正确)

问题是当我向localhost:1337/user/find 发出请求时,api 会返回我

findByName 也是(不正确的:( )

为什么?我知道如果相同的 http 动词,获取,但我指的是不同的端点。为什么它只返回我 findByName?。

看起来是调用发出了请求,但只有它可以看到findByName

抱歉英语不好。谢谢。

【问题讨论】:

    标签: controller routes sails.js


    【解决方案1】:

    我认为您误解了路由参数的解析。

    使用您的路由配置,您应该发送如下请求:

    找到

    GET localhost:1337/user - 将去寻找控制器中的动作。

    findByName

    GET localhost:1337/user/name - 将转到控制器中的 findByName 操作。

    看看docu。还可以考虑使用 blueprint routes and action,它已经实现了 find 和 findOne。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-24
      • 2016-03-29
      • 2017-03-10
      • 2022-11-23
      • 2017-04-05
      • 2016-10-03
      • 2017-04-15
      • 2016-03-03
      相关资源
      最近更新 更多