Имена полей GraphQL должны соответствовать определенным правилам. В частности /^[_a-zA-Z][_a-zA-Z0-9]*$/
. Как видите, имя поля не должно начинаться с цифры 0-9. Определенные имена полей могут быть неудобны для потребителя вашего API GraphQL в зависимости от того, какие языки они используют. Ограничения имени поля определены так, что большинство распространенных языков могут легко использовать данные, предоставляемые GraphQL API.
Рекомендуемое решение состоит в том, чтобы следовать правилам и придумывать лучшие имена полей, такие как _1
, two
или field3
.
Вы можете вернуть массив вместо объекта, но в настоящее время нет простого способа установить конкретную длину для массива. Кроме того, индексирование массива будет начинаться с 0, а не с 1.
Вы можете определить собственный скаляр для вашего объекта, но тогда вы потеряете возможность пропустить ненужные поля, и для его работы потребуется гораздо более сложный код. Поэтому я бы посчитал это плохой практикой. Делайте это только в том случае, если вы имеете дело с негибким и непрозрачным сторонним приложением, которое не оставляет вам другого выхода.