powiedzmy Próbuję stworzyć rower jako mutacjaobsługi błędów w mutacji
var createBike = (wheelSize) => {
if (!factoryHasEnoughMetal(wheelSize)) {
return supplierError('Not enough metal');
}
return factoryBuild(wheelSize);
}
Co się dzieje, gdy nie wystarczy dla nich stal błyszczące koła? Prawdopodobnie będziemy potrzebować błędu po stronie klienta. Jak mogę dostać się do nich, że z mojego serwera graphQL z mutacją poniżej:
// Mutations
mutation: new graphql.GraphQLObjectType({
name: 'BikeMutation',
fields:() => ({
createBike: {
type: bikeType,
args: {
wheelSize: {
description: 'Wheel size',
type: new graphql.GraphQLNonNull(graphql.Int)
},
},
resolve: (_, args) => createBike(args.wheelSize)
}
})
})
Czy to tak proste, jak wracając jakiś rodzaj błędu, który serwer/Mam zdefiniowane?
Dziękujemy za wskazanie biblioteki błędów programu GraphQL. –
Haha, to takie proste! Dziękuję za jasną odpowiedź i [błędy grafql] (https://github.com/kadirahq/graphql-errors) –
Czy normą jest zawsze zwracać zlokalizowane komunikaty bezpośrednio z interfejsu API, a nie klucze błędów, pozwalające klientowi traktować tłumaczenie jako to się podoba? – dSebastien