diff --git a/packages/core/src/router.ts b/packages/core/src/router.ts index 96b4661e26c1..74c50c5d861d 100644 --- a/packages/core/src/router.ts +++ b/packages/core/src/router.ts @@ -115,12 +115,11 @@ export class Router { return this.routes.get(defaultRoute)!; } - if (!label) { - // eslint-disable-next-line max-len - throw new MissingRouteError(`No default route set up. Please specify 'requestHandler' option or provide default route via 'crawler.router.addDefaultRoute()'.`); - } - - throw new MissingRouteError(`Route not found for label '${String(label)}' and no default route set up!`); + throw new MissingRouteError( + `Route not found for label '${String(label)}'.` + + ' You must set up a route for this label or a default route.' + + ' Use `requestHandler`, `router.addHandler` or `router.addDefaultHandler`.', + ); } /** diff --git a/test/core/crawlers/cheerio_crawler.test.ts b/test/core/crawlers/cheerio_crawler.test.ts index 60f7449f03f1..e61eaba4a45d 100644 --- a/test/core/crawlers/cheerio_crawler.test.ts +++ b/test/core/crawlers/cheerio_crawler.test.ts @@ -190,7 +190,7 @@ describe('CheerioCrawler', () => { }); // eslint-disable-next-line max-len - await expect(cheerioCrawler.run()).rejects.toThrow(`No default route set up. Please specify 'requestHandler' option or provide default route via 'crawler.router.addDefaultRoute()'.`); + await expect(cheerioCrawler.run()).rejects.toThrow("Route not found for label 'undefined'. You must set up a route for this label or a default route. Use `requestHandler`, `router.addHandler` or `router.addDefaultHandler`."); }); test('should ignore ssl by default', async () => {