GraphQL, eine moderne Abfragesprache für APIs, gepaart mit Ruby on Rails, bietet eine leistungsstarke Kombination für eine rationalisierte API-Entwicklung. In dieser Kurzanleitung gehen wir die wesentlichen Schritte durch, um eine GraphQL-API in einer Ruby on Rails-Anwendung einzurichten und Ihnen eine solide Grundlage für eine effiziente und flexible Webentwicklung zu bieten.
Schritt 1: Erstellen Sie ein neues Rails-Projekt
bash
Schienen neues graphql_Beispielcd graphql_Beispiel
Schritt 2: Fügen Sie die notwendigen Gems zu Ihrem Gemfile hinzu
Fügen Sie die folgenden Edelsteine zu Ihrem Gemfile:
Rubin
gem 'graphql'gem 'graphiql-rails', Gruppe: :Entwicklung
Laufen Bundle-Installation um die neuen Edelsteine zu installieren.
Schritt 3: Erstellen eines GraphQL-Schemas
Erstellen Sie eine Datei mit dem Namen app/graphql/types/query_type.rb:
Rubin
# app/graphql/types/query_type.rbTypen::QueryType = GraphQL::ObjectType.define do
Name 'Abfrage'
description 'Der Typ der Stammabfrage'
feld :hallo do
Typ types.String
description 'Ein Beispielfeld'
resolve ->(_obj, _args, _ctx) { 'Hallo, GraphQL!' }
Ende
Ende
Schritt 4: Erstellen eines GraphQL-Controllers
Erzeugen Sie einen Controller für die Verarbeitung von GraphQL-Abfragen:
bash
Schienen generieren Controller graphql ausführen
Ersetzen Sie den Inhalt von app/controller/graphql_controller.rb mit den folgenden:
Rubin
# app/steuerungen/graphql_steuerungen.rbKlasse GraphqlController < ApplicationController
def Ausführen
variables = ensure_hash(params[:variables])
abfrage = params[:abfrage]
operation_name = params[:operationName]
Kontext = {
# Fügen Sie hier alle erforderlichen Kontextwerte hinzu, z. B. current_user oder session
}
result = Schema.execute(query, variables: variables, context: context, operation_name: operation_name)
json wiedergeben: Ergebnis
Ende
Privat
def ensure_hash(Variablen)
Fallvariablen
wenn String
JSON.parse(Variablen) || {}
wenn Hash
Variablen
wenn nicht vorhanden
{}
anders
raise ArgumentError, "Ungültige Variablen: #{Variablen}"
Ende
Ende
Ende
Schritt 5: Erstellen des GraphQL-Schemas
Erstellen Sie eine Datei mit dem Namen app/graphql/schema.rb:
Rubin
# app/graphql/schema.rbSchema = GraphQL::Schema.define do
Abfrage(Typen::AbfrageTyp)
# Bei Bedarf Mutationstypen hinzufügen
Ende
Schritt 6: Routen konfigurieren
Aktualisieren Sie Ihr config/routes.rb um den GraphQL-Endpunkt aufzunehmen:
Rubin
# config/routes.rbRails.application.routes.draw tun
post '/graphql', to: 'graphql#execute'
if Rails.env.development?
GraphiQL::Rails::Engine einhängen, bei: '/graphiql', graphql_path: '/graphql'
Ende
Ende
Schritt 7: Starten Sie Ihren Rails-Server
bash
Schienen s
Besuchen Sie http://localhost:3000/graphiql in Ihrem Browser, um GraphiQL zu verwenden, eine browserinterne IDE zur Erforschung von GraphQL.
In der GraphiQL-Schnittstelle können Sie eine Abfrage wie diese eingeben:
graphql
{hallo
}
Und Sie sollten eine Antwort erhalten:
json
{"Daten": {
"Hallo": "Hallo, GraphQL!"
}
}
Dies ist ein einfaches Beispiel, aber Sie können Ihr GraphQL-Schema mit weiteren Typen und Mutationen erweitern, um es an die Bedürfnisse Ihrer Anwendung anzupassen.
Abschluss
Wenn Sie diese Kurzanleitung befolgen, sind Sie gut gerüstet, um GraphQL nahtlos in Ihre Ruby on Rails-Projekte zu integrieren. Nutzen Sie die Leistungsfähigkeit von GraphQL, um APIs zu erstellen, die den spezifischen Anforderungen Ihrer Anwendung gerecht werden und gleichzeitig eine hervorragende Entwickler- und Benutzererfahrung bieten. Machen Sie sich bereit, Ihr API-Entwicklungsspiel mit der Einfachheit und Flexibilität von GraphQL in Ruby on Rails zu verbessern. Steigern Sie die digitale Präsenz Ihres Unternehmens mit hochkarätige Ruby on Rails-Entwickler von SchienenCarma. Unsere erfahrenen Fachleute bringen eine Fülle von Erfahrungen und Innovationen mit und sorgen dafür, dass Ihre Projekte nicht nur nahtlos ausgeführt werden, sondern auch die Branchenstandards übertreffen.