GraphQL, un moderno lenguaje de consulta para APIs, unido a Ruby on Rails, ofrece una potente combinación para agilizar el desarrollo de APIs. En esta guía rápida, recorreremos los pasos esenciales para configurar una API GraphQL en una aplicación Ruby on Rails, proporcionándole una base sólida para un desarrollo web eficiente y flexible.
Paso 1: Crear un nuevo proyecto Rails
intento
rails new graphql_examplecd graphql_ejemplo
Paso 2: Añada las gemas necesarias a su Gemfile
Añade las siguientes gemas a tu Gemfile:
rubí
gem 'graphql'gem 'graphiql-rails', grupo: :development
Correr instalación del paquete para instalar las nuevas gemas.
Paso 3: Crear un esquema GraphQL
Cree un archivo llamado app/graphql/types/query_type.rb:
rubí
# app/graphql/types/query_type.rbTypes::QueryType = GraphQL::ObjectType.define do
nombre "Consulta
description 'El tipo de consulta raíz'
campo :hola do
tipo types.String
description 'Un campo de ejemplo'
resolve ->(_obj, _args, _ctx) { '¡Hola, GraphQL!' }
fin
fin
Paso 4: Crear un controlador GraphQL
Generar un controlador para manejar consultas GraphQL:
intento
rails generar controlador graphql ejecutar
Sustituya el contenido de app/controllers/graphql_controller.rb con lo siguiente:
rubí
# app/controllers/graphql_controller.rbclass GraphqlController < ControladorDeAplicación
def ejecutar
variables = ensure_hash(params[:variables])
consulta = params[:consulta]
nombre_operación = params[:nombre_operación]
contexto = {
# Añada aquí los valores de contexto necesarios, como current_user o session
}
result = Schema.execute(consulta, variables: variables, contexto: contexto, nombre_operación: nombre_operación)
render json: resultado
fin
privado
def ensure_hash(variables)
variables de caso
cuando Cadena
JSON.parse(variables) || {}
cuando Hash
variables
cuando nil
{}
demás
raise ArgumentError, "Variables no válidas: #{variables}"
fin
fin
fin
Paso 5: Crear el esquema GraphQL
Cree un archivo llamado app/graphql/schema.rb:
rubí
# app/graphql/schema.rbEsquema = GraphQL::Schema.define do
query(Tipos::TipoConsulta)
# Añadir tipos de mutación si es necesario
fin
Paso 6: Configurar rutas
Actualice su config/rutas.rb para incluir el punto final GraphQL:
rubí
# configuración/rutas.rbRails.application.routes.draw hacer
post '/graphql', to: 'graphql#execute'
si Rails.env.development?
mount GraphiQL::Rails::Engine, en: '/graphiql', graphql_path: '/graphql'
fin
fin
Paso 7: Ejecutar el servidor Rails
intento
carriles s
Visite http://localhost:3000/graphiql en su navegador para utilizar GraphiQL, un IDE en el navegador para explorar GraphQL.
En la interfaz GraphiQL, puedes introducir una consulta como:
graphql
{hola
}
Y debería recibir una respuesta:
json
{"datos": {
"Hola": "¡Hola, GraphQL!"
}
}
Este es un ejemplo sencillo, pero puedes ampliar tu esquema GraphQL con más tipos y mutaciones para adaptarlo a las necesidades de tu aplicación.
Conclusión
Siguiendo esta guía de configuración rápida, estará bien equipado para integrar GraphQL en sus proyectos Ruby on Rails sin problemas. Aproveche el poder de GraphQL para crear APIs que se adapten a las necesidades específicas de su aplicación, proporcionando al mismo tiempo una excelente experiencia al desarrollador y al usuario. Prepárese para mejorar su desarrollo de APIs con la sencillez y flexibilidad de GraphQL en Ruby on Rails. Mejore la presencia digital de su empresa con desarrolladores Ruby on Rails de primer nivel de RielesCarma. Nuestros experimentados profesionales aportan una gran experiencia e innovación, garantizando que sus proyectos no sólo se ejecuten a la perfección, sino que superen las normas del sector.