Jak správně nastavit chyby pro nevalidní data v GraphQL?
Zajímalo by mě, jak nejlepší způsob, jakým lze v GraphQL zpracovat chyby, které vznikají při nevalidních datech. Mám na mysli situace, kdy uživatelé zadávají špatné nebo chybějící informace a já bych chtěl, aby byla chyba správně zachycena a vrácena zpět jako odpověď. Uvažoval jsem o použití vlastních chybových typů, ale nejsem si jistý, jak je implementovat bez toho, abych přetížil API a způsobil nežádoucí chování. Je lepší mít globální error handler, nebo raději specifické chyby pro jednotlivé typy dotazů? Všiml jsem si, že různé projekty to dělají různě a zajímalo by mě, co funguje nejlépe v praxi. Jaké máte zkušenosti s návrhem schématu pro chyby v GraphQL? Jakou strategii doporučujete pro uživatelské rozhraní, aby se chyby daly jasně pochopit? Myslím si, že je důležité nejen vrátit kód chyby, ale také nějaký popis, který by uživatelům pomohl pochopit, co udělali špatně. A co třeba validace dat na úrovni serveru versus klienta? Kde byste viděli hranici mezi těmito dvěma? Hlavně bych chtěl slyšet vaše názory a tipy na to, jak udělat API uživatelsky přívětivé i při chybách. Předem díky za jakékoli rady!