Quickstarters

Come costruire un backend per Ruby?

35min

Introduzione

In questo tutorial, scoprirai come costruire un backend per Ruby utilizzando Back4App.

Esploreremo le funzionalità essenziali di Back4App come la gestione del database, le Funzioni Cloud Code, le API REST e GraphQL, l'autenticazione degli utenti e le query in tempo reale (Live Queries).

Sfruttando il linguaggio di programmazione Ruby e Back4App, ottieni un backend sicuro, scalabile e robusto che si integra facilmente con il tuo ecosistema di sviluppo software.

Questo approccio ti fa risparmiare tempo e sforzi utilizzando una piattaforma web open source costruita su Parse. Vedrai come accelerare i progetti di sviluppo con principi di sviluppo rapido.

Durante il percorso, imparerai a utilizzare funzionalità di sicurezza avanzate, pianificare attività con Cloud Jobs e impostare webhook per integrazioni esterne.

Alla fine, sarai pronto per creare una struttura di framework per applicazioni web e ampliarla per applicazioni in produzione.

Sarai in grado di:

  1. Integrare Ruby con Back4App per modelli di dati, logica orientata agli oggetti e dati in tempo reale.
  2. Sfruttare le migliori pratiche del processo di sviluppo per lo sviluppo di applicazioni in uno stile model view controller (MVC) o qualsiasi altra architettura tu preferisca.
  3. Migliorare il tuo ruolo come sviluppatore backend gestendo l'autenticazione sicura degli utenti, i trigger del Cloud Code e altro ancora.
  4. Affinare ulteriormente le tue applicazioni web per soddisfare le esigenze del mondo reale utilizzando le funzionalità flessibili di Back4App.

Requisiti

  • Un account Back4app e un nuovo progetto Back4app Iniziare con Back4app. Registrati gratuitamente se non hai un account.
  • Un ambiente Ruby locale Dovresti avere Ruby installato. In genere, si consiglia Ruby 2.6 o superiore.
  • Familiarità con il linguaggio di programmazione Ruby Conoscenza di base della sintassi Ruby, concetti orientati agli oggetti e uso comune dei linguaggi di programmazione
  • Bundler (opzionale ma consigliato) Bundler aiuta a gestire le gemme per il tuo framework di applicazione web o progetti di sviluppo. Documentazione ufficiale di Bundler.

Assicurati di avere tutti questi requisiti in atto prima di iniziare. Avere il tuo progetto Back4App creato e il tuo ambiente Ruby pronto garantirà un'esperienza di tutorial fluida.

Passo 1 – Creare un nuovo progetto su Back4App e connettersi

  1. Perché Questo Passo È Importante Un nuovo progetto Back4App è la base per il tuo sviluppo dell'applicazione. Ospita il tuo database, gestisce l'autenticazione degli utenti e fornisce l'ambiente per eseguire Cloud Code.
  2. Crea un Nuovo Progetto
    • Accedi a Back4App.
    • Clicca su Nuova App nel tuo dashboard di Back4App.
    • Dai un nome alla tua app (ad esempio, “Ruby-Backend-Tutorial”).
  3. Installa Parse SDK e Connettiti a Back4App Il Parse SDK per Ruby ti aiuta a interagire con il backend di Back4App. Puoi installarlo tramite gem:

Passo 2 – Configurazione del Database

1. Creazione di un Modello Dati

In Back4App, una classe è come una tabella di database. Ad esempio, puoi creare una classe “Todo” per memorizzare i compiti. Puoi creare classi al volo da Ruby o definirle nel dashboard per un controllo più dettagliato.

2. Creazione di un Modello Dati Utilizzando l'Agente AI

  1. Apri l'Agente AI nel tuo Dashboard dell'App.
  2. Descrivi il tuo modello dati in linguaggio semplice (ad esempio, “Un'app Todo con campi titolo e isCompleted”).
  3. Lascia che l'Agente AI crei automaticamente il tuo schema.
Document image


3. Lettura e Scrittura di Dati Utilizzando Ruby (Parse SDK)

Di seguito è riportato un semplice esempio di creazione di un nuovo record in una classe “Todo” utilizzando il Ruby SDK:

Ruby


4. Lettura e Scrittura di Dati Utilizzando REST API

Puoi anche creare e recuperare record utilizzando l'interfaccia REST:

Bash


5. Lettura e Scrittura dei Dati Utilizzando l'API GraphQL

Back4App offre un endpoint GraphQL per applicazioni web:

GraphQL


6. Lavorare con le Query Live (Opzionale)

Abilita Live Queries nel dashboard di Back4App (Impostazioni del Server) e iscriviti dal tuo script Ruby se il tuo ambiente supporta le connessioni WebSocket. Puoi anche usarle per aggiornamenti in tempo reale in un framework di applicazioni web che supporta la concorrenza.

Passo 3 – Applicare la Sicurezza con ACL e CLP

1. Panoramica

Le ACL (Liste di Controllo degli Accessi) e le CLP (Permessi a Livello di Classe) proteggono i tuoi dati in modi orientati agli oggetti. Le ACL ti permettono di decidere chi può leggere o scrivere ciascun record. Le CLP ti permettono di gestire i permessi per un'intera classe.

Document image


2. Impostare i Permessi a Livello di Classe (CLP) e ACL

Vai alla Database sezione della tua app e seleziona la tua classe, come “Todo.” Configura le CLP della tua classe sotto “Sicurezza” o “Permessi a Livello di Classe.” Per impostare le ACL su un record:

Ruby


Questo assicura che solo il proprietario possa leggere/scrivere quel particolare Todo.

Passo 4 – Scrivere Funzioni di Cloud Code

1. Perché Cloud Code

Cloud Code aiuta a incorporare la logica aziendale e le convalide direttamente nel server. È ideale per garantire l'integrità dei dati e per eseguire compiti non esposti ai client.

2. Funzione di Esempio

Nel file main.js (o simile) del tuo progetto su Back4App, puoi definire una Funzione Cloud:

JS


Nota: Anche se la nostra applicazione principale utilizza Ruby, il Cloud Code in Parse è basato su JavaScript. Questo è il modo in cui incorpori la logica lato server su Back4App.

3. Distribuzione

  • Back4App CLI:
  • Back4App Dashboard: Copia/incolla la tua funzione in Cloud Code > Funzioni e clicca su Distribuisci.

4. Moduli NPM

Puoi installare moduli npm (ad esempio, axios) per il tuo ambiente Cloud Code. Ad esempio:

Bash


Nel tuo main.js, richiedilo e fai chiamate API esterne secondo necessità.

Passo 5 – Configurazione dell'autenticazione

1. Impostazioni della Dashboard

Abilita l'autenticazione degli utenti nelle Impostazioni dell'app. Back4App utilizza Parse.User per la gestione degli utenti.

2. Registrazione / Accesso con Ruby

Ruby


3. Accesso Sociale

Per integrare accessi sociali (Facebook, Google, Apple), consulta la Documentazione Accesso Sociale. I dettagli di implementazione variano per ciascun fornitore.

Passo 6 – Gestione dello Storage dei File

1. Configurazione dello Storage dei File

Back4App gestisce il caricamento dei file tramite l'oggetto Parse::File. In Ruby:

Ruby


2. Esempio

Gli utenti possono caricare immagini, documenti o altri file. Recupera l'URL per visualizzarlo nel tuo frontend o in altri servizi.

3. Considerazioni sulla Sicurezza

Configura la tua app per limitare il caricamento di file agli utenti autenticati, se necessario.

Passo 7 – Verifica Email e Ripristino Password

1. Perché è Importante

La verifica dell'email garantisce indirizzi email validi per i nuovi account. Il ripristino della password consente ai tuoi utenti di recuperare i loro account in modo sicuro.

2. Configurazione del Dashboard di Back4App

  • Abilita Verifica Email.
  • Imposta modelli personalizzati per la verifica e il ripristino della password.

3. Esempio di Codice

Da Ruby, puoi richiedere un ripristino della password:

Bash


Questo invia un link per il ripristino della password all'email dell'utente.

Passo 8 – Pianificazione dei Compiti con Cloud Jobs

1. Cosa Fanno i Cloud Jobs

I lavori nel Cloud eseguono compiti periodici come la pulizia dei dati obsoleti o l'invio di email di riepilogo.

2. Esempio di Lavoro

JS


Programma sotto Impostazioni App > Impostazioni Server > Lavori in Background nel tuo dashboard di Back4App.

Passo 9 – Integrazione dei Webhook

1. Definizione

I webhook ti permettono di inviare richieste HTTP a servizi esterni ogni volta che si verificano determinati eventi in Back4App. Questo è ottimo per collegarsi a servizi di terze parti o per attivare compiti in altri linguaggi di programmazione.

2. Configurazione

Vai al dashboard di Back4App della tua app > Altro > WebHooks, e aggiungi un nuovo Webhook con l'URL del tuo servizio esterno.

3. Esempio

Invia dati a Stripe o Slack ogni volta che viene creato un nuovo “Todo”. In alternativa, puoi definire trigger nel Cloud Code e fare richieste HTTP all'interno di quei trigger.

Passo 10 – Esplorare il Pannello di Amministrazione di Back4App

1. Dove Trovarlo

Nella dashboard della tua app, fai clic su Altro > App Admin, quindi abilitalo.

2. Caratteristiche

  • Interfaccia grafica per la gestione dei dati senza codice.
  • Strumenti per analizzare i log, pianificare lavori in background e altro.
  • Controllo degli accessi basato sui ruoli, che ti consente di fornire agli utenti non tecnici un modo sicuro per gestire i contenuti.
Abilita l'App Admin
Abilita l'App Admin


Conclusione

Hai costruito un backend sicuro e scalabile per la tua app Ruby su Back4App, utilizzando il linguaggio di programmazione Ruby per connetterti con l'API Parse. Il tuo processo di sviluppo ora include:

  • Un database con funzionalità di sicurezza avanzate (ACL, CLP).
  • Aggiornamenti dei dati in tempo reale tramite Query Live.
  • Cloud Code trigger per logica aziendale personalizzata.
  • Autenticazione degli utenti e gestione dei file.
  • Attività pianificate con Cloud Jobs e Webhook per servizi esterni.
  • Un Pannello di Amministrazione facile da usare per la gestione dei dati.

Con questa base, puoi estendere le tue applicazioni web o altri progetti di linguaggi di programmazione per soddisfare i requisiti del mondo reale.

Che tu sia un sviluppatore backend esperto o stia appena iniziando con Ruby, Back4App offre una piattaforma orientata agli oggetti e facile da usare per uno sviluppo rapido.

Sentiti libero di integrare API o funzionalità aggiuntive e esplora ulteriori personalizzazioni per allinearti ai modelli di controller di visualizzazione (MVC) o ad altri stili architettonici.

Prossimi Passi

  • Affina il tuo ambiente di produzione aggiungendo caching avanzato, accesso basato su ruoli o ottimizzazioni delle prestazioni.
  • Aggiungi relazioni più complesse tra le classi di dati per alimentare casi d'uso reali.
  • Esplora la Documentazione ufficiale di Back4App per sicurezza, approfondimenti sulle prestazioni e analisi.
  • Sperimenta con altri framework web open source per espandere le funzionalità della tua applicazione.

Divertiti a costruire applicazioni web più robuste e ricche di funzionalità con Ruby e Back4App!