DIYgod/RSSHub · error · Error

${recommendList.message}

Error message

${recommendList.message}

What it means

Thrown by the DXY board post list API call when the response `code` field is not 'success'. The route calls `/bbsapi/bbs/board/post/list` with signed parameters to fetch the paginated post list for a given boardId. A non-success code indicates the API rejected the request, and the API's own `message` is re-thrown.

Source

Thrown at lib/routes/dxy/board.ts:72

        async () => {
            const listParams = {
                boardId,
                postType: '0',
                orderType: '1',
                pageNum: '1',
                pageSize: limit,
                timestamp: Date.now(),
                noncestr: generateNonce(8, 'number'),
            };

            const recommendList = await ofetch(`${phoneBaseUrl}/bbsapi/bbs/board/post/list`, {
                query: {
                    ...listParams,
                    sign: sign(listParams),
                },
            });
            if (recommendList.code !== 'success') {
                throw new Error(recommendList.message);
            }
            return recommendList.data;
        },
        config.cache.routeExpire,
        false
    )) as PostListData;

    const list = boardList.result.map((item) => ({
        title: item.subject,
        author: item.postUser.nickname,
        category: [boardDetail.title],
        link: `${webBaseUrl}/bbs/newweb/pc/post/${item.postId}`,
        postId: item.postId,
    }));

    const items = await Promise.all(list.map((item) => getPost(item)));

    return {

View on GitHub (pinned to bed535e087)

Solutions

  1. Verify the board has accessible posts by visiting the DXY BBS board page in a browser.
  2. Retry after a delay — may be transient.
  3. Inspect the upstream message for specific error details.
  4. If persistent, check for RSSHub updates to the API parameter format.

Example fix

// before
if (recommendList.code !== 'success') {
    throw new Error(recommendList.message);
}

// after
if (recommendList.code !== 'success') {
    throw new Error(`DXY board post list API error (boardId=${boardId}, code=${recommendList.code}): ${recommendList.message}`);
}
Defensive patterns

Strategy: try-catch

Type guard

function isDxyPostListSuccess(resp: unknown): boolean {
    return typeof resp === 'object' && resp !== null && (resp as any).code === 'success';
}

Try / catch

try {
    const feed = await fetch(`${rsshubUrl}/dxy/bbs/board/${boardId}`);
} catch (e) {
    console.error(`DXY board post list API error for boardId ${boardId}: ${e.message}`);
    throw e;
}

Prevention

When it happens

Trigger: The boardId is valid for the detail endpoint but the post list query fails (e.g. board has no posts); signature validation fails on this specific endpoint; the postType or orderType parameters are invalid; rate limiting.

Common situations: The board exists but is empty or restricted; the list query parameters differ from what the API expects; transient server error.

Related errors


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