Я создаю приложение React с использованием Apollo Graphql, и у меня возникли некоторые проблемы с Apollo Link Rest. Проблема заключается в том, что в середине моего приложения я должен сделать запрос REST, однако этот запрос может быть успешным и вернуть код состояния = 200, или может произойти сбой, возвращая код состояния = 400.
Этодля моего приложения важно показать конечному пользователю сообщение об ошибке, которое возвращается в теле этого запроса в случае ошибки 400. Однако, когда происходит ошибка, Apollo Link Rest просто генерирует исключение, но не возвращает мне тело ответа.
Есть ли способ получить тело ответа, когда возникает ошибка сАполлон Ссылка Отдых? Я думал, что смогу получить его из переменной result
, но поскольку Apollo выдает исключение, эта переменная никогда не меняется.
Вот мой код:
const result = await context.client.query<MyQuery>({
query: MyQuery,
variables: {
input: {
companyId: variables.companyId,
},
},
});
query MyQuery($input: MyQueryInput!) {
myQuery(input: $input) @rest(
type: "QueryResponse",
method: "POST"
path: "v1/my-query"
) {
id
minimumPreparationTime
maximumPreparationTime
extras {
id
optional
key
}
warning
error {
id
type
message
}
}
}