DIYgod/RSSHub · error · InvalidParameterError

Invalid year '${requestedYear}'

Error message

Invalid year '${requestedYear}'

What it means

Error "Invalid year '${requestedYear}'" thrown in DIYgod/RSSHub.

Source

Thrown at lib/routes/people/xjpjh.ts:40

        supportScihub: false,
    },
    radar: [
        {
            source: ['jhsjk.people.cn/'],
            target: '/xjpjh',
        },
    ],
    name: '习近平系列重要讲话',
    maintainers: ['LogicJake'],
    handler,
    url: 'jhsjk.people.cn',
};

async function handler(ctx) {
    const requestedKeyword = ctx.req.param('keyword');
    const requestedYear = ctx.req.param('year');
    if (requestedYear && requestedYear !== 'all' && !/^\d{4}$/.test(requestedYear)) {
        throw new InvalidParameterError(`Invalid year '${requestedYear}'`);
    }

    const keyword = requestedKeyword && requestedKeyword !== 'all' ? requestedKeyword : '';
    const year = requestedYear && requestedYear !== 'all' ? requestedYear : '0';
    const requestedLimit = Number(ctx.req.query('limit') ?? 10);
    const limit = Number.isSafeInteger(requestedLimit) && requestedLimit > 0 ? Math.min(requestedLimit, 10) : 10;
    const title = `习近平系列重要讲话-${keyword || 'all'}-${year === '0' ? 'all' : year}`;
    const resultUrl = new URL('/result', host);
    resultUrl.searchParams.set('keywords', keyword);
    resultUrl.searchParams.set('year', year);
    const link = resultUrl.href;
    const response = await got.get(link);

    const $ = load(response.data);

    const list = $('#news_list > li > a[href]')
        .slice(0, limit)
        .toArray()

View on GitHub (pinned to bed535e087)

Solutions

  1. Pass a valid year that has archived content available on the site.

When it happens

Trigger: The requested year parameter is not a valid or available archive year.

Common situations: See trigger scenarios.


AI-assisted analysis of DIYgod/RSSHub@bed535e087 (2026-08-12). Data as JSON: /api/errors/d3abd41f6a833056. Report an issue: GitHub.