Кстати, я не хотел создавать трассировку стека для каждой запрещенной ошибки, потому что я не хочу пропускать подробности о моем приложении. Поэтому я предпочитаю создать отказ только один раз.

м серверном приложении я хочу вернуть «запрещенное» значение, когда у пользователя нет разрешений для конечной точки.

С этой целью я создаю отклоненное обещание для повторного использования:

export const forbidden = Promise.reject(new Error('FORBIDDEN'))

а затем в другом месте в приложении:

import {forbidden} from './utils'

...

    resolve: (root, {post}, {db, isCollab}) => {
        if (!isCollab) return forbidden
        return db.posts.set(post)
    },

Однако, когда я запускаю свое приложение, я получаю предупреждение

(node:71620) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: FORBIDDEN
(node:71620) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Как я могу сказать Node, что с этим Обещанием можно справиться?

Ответы на вопрос(0)

Ваш ответ на вопрос