admin管理员组文章数量:1414865
I am trying to use an inline regular expression in a koa-router route parameter, but I am getting an error. Here’s my code:
import Koa from 'koa';
import Router from 'koa-router';
const app = new Koa();
const router = new Router();
router.get('/hello/:id([0-9]{5})', (ctx) => {
const id = ctx.params.id;
console.log(id);
ctx.body = `Hello ${id}`;
});
app.use(router.routes());
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
Error:
throw new TypeError(`Unexpected ${nextType} at ${index}, expected ${type}: ${DEBUG_URL}`);
^
TypeError: Unexpected [ at 11, expected END: /pathToRegexpError
at Iter.consume (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:123:15)
at consume (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:179:16)
at parse (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:183:20)
at C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:294:74
at Array.map (<anonymous>)
at pathToRegexp (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:294:25)
at new Layer (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\koa-router\lib\layer.js:54:39)
at Router.register (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\koa-router\lib\router.js:477:19)
at Router.<computed> [as get] (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\koa-router\lib\router.js:828:10)
at file:///C:/Users/User/Desktop/amagi-training/koa-router-new/index.js:7:8
Older versions of koa-router works with this. I tried reinstalling everything. Tried installing the latest for everything.
I am trying to use an inline regular expression in a koa-router route parameter, but I am getting an error. Here’s my code:
import Koa from 'koa';
import Router from 'koa-router';
const app = new Koa();
const router = new Router();
router.get('/hello/:id([0-9]{5})', (ctx) => {
const id = ctx.params.id;
console.log(id);
ctx.body = `Hello ${id}`;
});
app.use(router.routes());
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
Error:
throw new TypeError(`Unexpected ${nextType} at ${index}, expected ${type}: ${DEBUG_URL}`);
^
TypeError: Unexpected [ at 11, expected END: https://git.new/pathToRegexpError
at Iter.consume (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:123:15)
at consume (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:179:16)
at parse (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:183:20)
at C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:294:74
at Array.map (<anonymous>)
at pathToRegexp (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\path-to-regexp\dist\index.js:294:25)
at new Layer (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\koa-router\lib\layer.js:54:39)
at Router.register (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\koa-router\lib\router.js:477:19)
at Router.<computed> [as get] (C:\Users\User\Desktop\amagi-training\koa-router-new\node_modules\koa-router\lib\router.js:828:10)
at file:///C:/Users/User/Desktop/amagi-training/koa-router-new/index.js:7:8
Older versions of koa-router works with this. I tried reinstalling everything. Tried installing the latest for everything.
Share Improve this question asked Feb 11 at 11:27 ButteryAvocadoButteryAvocado 1 3 |1 Answer
Reset to default 0This error occurs in the latest version 13.0.1. Tried to downgrade to 11.0.2 or 12.0.1 and solved the issue.
In package.json change: "koa-router": "11.0.2" and remember to remove the "^"
I have not check detailed on the document, maybe this changed to other syntax?
本文标签: Error Inline regex not working in koarouter (Unexpected quot(quot at 10)Stack Overflow
版权声明:本文标题:Error: Inline regex not working in koa-router (Unexpected "(" at 10) - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745215200a2648121.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
'/hello/:id([0-9]{5})'
with'/hello/:id'
and then replacingconsole.log(id);
withif (!/^\d{5}$/.test(id)) { ctx.status = 400; ctx.body = "Invalid ID format. It must be a 5-digit number."; return;}
– Wiktor Stribiżew Commented Feb 11 at 11:30