GraphQL Cookbook
Получение объекта
10 мин
получение объекта через parse graphql api проблема вы хотите получить существующий объект из вашей базы данных через parse graphql api решение используя parse graphql, есть два разных способа получить существующий объект из вашей базы данных используя общий запрос https //www back4app com/docs/parse graphql/graphql query get object#query generic это запрос, который вы можете использовать для получения объекта любого класса используя запрос класса https //www back4app com/docs/parse graphql/graphql query get object#query class это рекомендуемый запрос, который вы должны использовать для получения объекта конкретного класса информация о версии в зависимости от версии parse, которую вы выберете для запуска, запросы graphql, мутации и результаты будут немного отличаться пожалуйста, выберите правильный пример вместе с версией parse, которую вы используете использование общего запроса когда вы используете get get общий запрос, сервер parse ведет себя как база данных без схемы это означает, что вам не нужно указывать, какие поля объекта вы хотите получить вам просто нужно отправить classname classname и objectid objectid , и сервер parse вернет все поля этого объекта таким образом, общий запрос get get — это запрос, который вы можете использовать для получения существующего объекта любого класса если вы хотите получить существующий объект конкретного класса, мы рекомендуем использовать запрос класса https //www back4app com/docs/parse graphql/graphql query get object#query class этот пример будет работать только в том случае, если вы используете classname classname с существующим объектом вы можете создать объект, используя рецепт создания объекта parse server 3 8 0 request 1 query getobject { 2 get(classname "hero", objectid "rr8jmfrnks") 3 } response 1 { 2 "data" { 3 "get" { 4 "objectid" "rr8jmfrnks", 5 "name" "luke skywalker", 6 "createdat" "2019 11 04t12 42 40 723z", 7 "updatedat" "2019 11 04t12 42 40 723z" 8 } 9 } 10 } пример parse 3 9 0 и позже parse 3 9 и позже не имеют универсальных методов get и find вы должны использовать конкретные методы ниже для получения объектов использование запроса класса как только вы уже создали класс вашего объекта в схеме вашего приложения (например, используя создание объекта https //www back4app com/docs/parse graphql/graphql mutation create object#mutation generic ), parse server мгновенно добавляет к вашему graphql api новый get\<classname> get\<classname> запрос для получения существующего объекта этого класса поэтому запрос класса объекта является рекомендуемым методом для получения существующего объекта конкретного класса поскольку этот запрос знает данные вашего класса, он автоматически предоставит вам дополнительные функции, такие как автозаполнение кода и валидация этот пример будет работать только если вы используете classname classname и objectid objectid существующего объекта вы можете создать объект, используя создание объекта рецепт parse server 3 10 0 и позже request 1 query gethero { 2 hero(id "sgvybzpvrm5tvdm1ynbp") { 3 id, 4 name, 5 createdat, 6 updatedat 7 } 8 } response 1 { 2 "data" { 3 "hero" { 4 "id" "sgvybzpvrm5tvdm1ynbp", 5 "name" "r2 d2", 6 "createdat" "2020 02 06t13 13 26 678z", 7 "updatedat" "2020 02 06t13 13 26 678z" 8 } 9 } 10 } старые версии parse server parse 3 9 0 запрос класса запрос 1 query gethero { 2 hero(id "ckhurmmjzw") { 3 id, 4 name, 5 createdat, 6 updatedat 7 } 8 } ответ 1 { 2 "data" { 3 "hero" { 4 "id" "ckhurmmjzw", 5 "name" "люк скайуокер", 6 "createdat" "2019 11 04t12 37 22 462z", 7 "updatedat" "2019 11 04t12 37 22 462z" 8 } 9 } 10 } parse server 3 8 0 запрос класса parse server 3 7 2 parse server 3 7 2 общий запрос запрос 1 query getobject { 2 objects { 3 get(classname "hero", objectid "ffyobotk85") 4 } 5 } ответ 1 { 2 "data" { 3 "objects" { 4 "get" { 5 "objectid" "ffyobotk85", 6 "name" "люк скайуокер", 7 "createdat" "2019 07 15t01 25 20 875z", 8 "updatedat" "2019 07 15t01 25 20 875z" 9 } 10 } 11 } 12 } запрос класса parse server 3 7 2 1 query gethero { 2 objects { 3 gethero(objectid "ffyobotk85") { 4 objectid, 5 name, 6 createdat, 7 updatedat 8 } 9 } 10 } результат parse 3 7 2 1 { 2 "data" { 3 "objects" { 4 "gethero" { 5 "objectid" "ffyobotk85", 6 "name" "люк скайуокер", 7 "createdat" "2019 07 15t01 25 20 875z", 8 "updatedat" "2019 07 15t01 25 20 875z" 9 } 10 } 11 } 12 }