扫码关注官方订阅号
注册了一个路由
router.get('/user/:id', user.find);
我想设计的是传入id一个操作,不传id参数另一个操作但是不传id参数直接就404了,我只能再注册一个
router.get('/user/', user.find);
感觉这用法很奇怪
用的是koa-router模块
你这么写参数叫做path variable,是路由其中的必填部分,如果想做可选参数,应该用query parameter(即:?传參)
path variable
query parameter
?
修正:
之前没看过这个koa-router,我是按照标准的http访问逻辑来建议的,但刚才看了下文档,发现这个东西不是一般的变态(简直莫名奇妙),于是我上面的建议就不能用了。
koa-router
http
得这样:
router.get('/user/:id?', user.find);
然后客户端访问时,就可以不填id,直接/user/这样访问了,看文档:
id
/user/
没用过koa,不知道这算哪门子逻辑,我不服
koa
补充:
关于路由规范,在文档的:
是由另一个库path-to-regexp来处理的
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
你这么写参数叫做
path variable,是路由其中的必填部分,如果想做可选参数,应该用query parameter(即:?传參)修正:
之前没看过这个
koa-router,我是按照标准的http访问逻辑来建议的,但刚才看了下文档,发现这个东西不是一般的变态(简直莫名奇妙),于是我上面的建议就不能用了。得这样:
然后客户端访问时,就可以不填
id,直接/user/这样访问了,看文档:补充:
关于路由规范,在文档的:
是由另一个库path-to-regexp来处理的