`fetch ': ключ не найден:" data "(KeyError): ошибка graphql-client - PullRequest
0 голосов
/ 11 июня 2019

Я пытался использовать запрос graphql в ruby ​​для получения репозиториев github. Прежде чем написать запрос, я работал над тем, чтобы заставить работать graphql-клиент. У меня проблемы с клиентом graphql.

Я перешел по этой ссылке для клиента graphql: https://github.com/github/graphql-client

require 'graphql'
require 'graphql/client'
require 'graphql/client/http'

module MyGraphQL
  HTTP = GraphQL::Client::HTTP.new('https://github.com/graphql') do
    def client_context
      { access_token: 'xxxxxxxxxxxxxxxxxx' }
    end

    def headers(_context)
      client_context
    end
  end

  Schema = GraphQL::Client.load_schema(HTTP)

  Client = GraphQL::Client.new(schema: Schema, execute: HTTP)
end

Я получаю следующие ошибки в терминале:

    'fetch': key not found: "data" (KeyError)
    'load'
    'load_schema'
    'load_schema'

1 Ответ

0 голосов
/ 11 июня 2019

Эта ошибка появляется из-за ответа, получаемого вами при получении https://github.com/graphql.

. Вы можете использовать binding.pry ( этот камень ), например, чтобы увидеть, что происходит, когда вы пытаетесьзапустить load_schema метод.Он пытается извлечь data из ответа здесь: http://i.imgur.com/9T9WRUu.png

Но нет атрибута data, потому что вы получаете {"errors"=>[{"message"=>"422 Unprocessable Entity"}]}

Попробуйте получить http://graphql-swapi.parseapp.com/, например, работал для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...