Graphql GQL не может анализировать символы Ruby или хэш-сокеты - PullRequest
0 голосов
/ 01 июля 2019

У меня есть следующий метод, который анализирует мутацию в читаемый GraphqL формат, используя GQL

def query(attributes:)
    <<~GQL
      mutation {
        createBook(
          attributes: #{attributes}
        ) {
          id
          title
          publicationDate
          genre
        }
      }
    GQL
  end

Затем я отправляю почтовый запрос на конечную точку /graphql, передавая то, что query возвращает в качестве параметров. Следующим образом

post '/graphql', params: { query: query(attributes: attributes) }

Когда я достигаю конечной точки, я получаю следующую ошибку

{"errors"=>[{"message"=>"Parse error on \":\" (COLON) }]}

Позже я понял, что GQL не может анализировать символы Ruby, т.е. :first_name. Поэтому я попытался преобразовать хэш-ключи attributes в строки с помощью attributes.stringify, но, похоже, GQL также не распознает хеш-ключи Ruby, поэтому он выдал ошибку

{"errors"=>[{"message"=>"Parse error on \"first_name\" (STRING) }]}

Есть ли способ заставить GraphQL анализировать символы Ruby и / или хеш-розетки?

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