Quickstarters

Come costruire un backend per NativeScript?

49min

Introduzione

In questo tutorial, imparerai come costruire un backend per NativeScript utilizzando Back4app, una piattaforma open source che semplifica lo sviluppo del backend per le app mobili.

Esploreremo l'integrazione delle funzionalità essenziali di Back4app—come la gestione del database, le Funzioni Cloud Code, gli endpoint API REST e GraphQL, l'autenticazione degli utenti e le query in tempo reale (Live Queries)—per creare un backend sicuro e scalabile per le tue app NativeScript.

Scoprirai anche come Back4app riduce drasticamente i tempi di configurazione rispetto alle configurazioni manuali di server e database.

Esploreremo meccanismi di sicurezza avanzati, la pianificazione di attività con Cloud Jobs e l'uso di webhook per connettersi a servizi di terze parti.

Entro la fine di questa guida, avrai un backend flessibile che sfrutta NativeScript Core, che alimenta le soluzioni mobili cross-platform di NativeScript.

Con questa base, sarai pronto a integrare la tua logica personalizzata o API esterne secondo necessità. Questo sarà un passo importante verso lo sviluppo di app NativeScript pronte per la produzione.

Requisiti

  • Un account Back4app e un nuovo progetto Back4app Iniziare con Back4app. Se non hai un account, puoi crearne uno gratuitamente. Segui la guida sopra per preparare il tuo progetto.
  • Ambiente di sviluppo NativeScript di base Puoi configurarlo utilizzando il NativeScript CLI o un altro flusso di lavoro preferito. Guida per iniziare con NativeScript.
  • Node.js (versione 14 o superiore) installato Avrai bisogno di Node.js per installare pacchetti npm e eseguire il NativeScript CLI. Installare Node.js
  • Familiarità con JavaScript e NativeScript Core Documentazione ufficiale di NativeScript. Se sei nuovo a NativeScript, rivedi la documentazione ufficiale o un tutorial per principianti prima di iniziare.

Assicurati di avere tutti questi requisiti in atto prima di iniziare. Avere il tuo progetto Back4app configurato e il tuo ambiente locale NativeScript pronto ti aiuterà a seguire più facilmente.

Passo 1 – Configurazione del Progetto Back4app

Crea un Nuovo Progetto

Il primo passo per costruire il tuo backend NativeScript su Back4app è creare un nuovo progetto. Se non lo hai già fatto, segui questi passaggi:

  1. Accedi al tuo account Back4app.
  2. Clicca sul pulsante “Nuova App” nel tuo dashboard di Back4app.
  3. Dai un nome alla tua app (ad esempio, “NativeScript-Backend-Tutorial”).
Document image


Dopo aver creato il progetto, lo vedrai elencato nel tuo dashboard di Back4app. Questo progetto servirà come base per tutte le configurazioni del backend trattate in questo tutorial.

Collegare il Parse SDK

Back4app utilizza la Parse Platform per gestire i tuoi dati, la funzionalità in tempo reale, l'autenticazione degli utenti e altro ancora. Per collegare la tua app NativeScript a Back4app, installa il parse pacchetto npm e inizializzalo con le credenziali che ottieni dal tuo dashboard di Back4app.

Recupera le tue Chiavi Parse: Nel tuo dashboard di Back4app, vai alla sezione “Impostazioni App” o “Sicurezza e Chiavi” della tua app. Cerca il tuo ID Applicazione, Chiave JavaScript, e URL del Server Parse (nel formato https://parseapi.back4app.com).

Document image


Installa il Parse SDK:

Bash


Poi, inizializza Parse in un file di configurazione o nel tuo file di ingresso principale (ad esempio, app.js). Ad esempio, potresti creare un file chiamato parseConfig.js in un progetto basato su NativeScript:

src/parseConfig.js


Ogni volta che hai bisogno di accedere a Parse nella tua app NativeScript, basta importare questo file. Completando questo passaggio, hai stabilito una connessione sicura tra il tuo frontend NativeScript e il backend Back4app, semplificando le operazioni sui dati.

Passo 2 – Configurazione del Database

Salvataggio e Query dei Dati

Con il tuo progetto Back4app pronto e il Parse SDK integrato, puoi salvare e interrogare i dati dalla tua app NativeScript. Di seguito è riportato un esempio che utilizza la classe Parse.Object per salvare e recuperare un elenco di elementi:

JS


Puoi anche utilizzare l'API REST di Back4app se preferisci chiamate HTTP dirette:

Bash


Oppure usa GraphQL:

GraphQL


Questa flessibilità rende conveniente costruire funzionalità backend per le tue app NativeScript attraverso il Parse SDK, REST o gli endpoint API GraphQL.

Progettazione dello schema e tipi di dati

Per impostazione predefinita, Parse può creare automaticamente schemi al volo, oppure puoi definire le tue classi e tipi di dati nel dashboard di Back4app:

  1. Vai alla sezione “Database” nel tuo dashboard di Back4app.
  2. Crea una nuova classe (ad esempio, “Task”) e aggiungi colonne come titolo (String) e isCompleted (Boolean).
Crea Nuova Classe
Crea Nuova Classe


Back4app supporta tipi di dati come String, Number, Boolean, Object, Date, File, Pointer, Array, Relation, GeoPoint, e Polygon. Puoi lasciare che Parse crei queste colonne quando salvi per la prima volta un oggetto o definirle per avere maggiore controllo.

Crea Colonna
Crea Colonna


Utilizzare l'AI Agent di Back4app può anche aiutarti a generare automaticamente schemi:

  1. Apri l'AI Agent nel tuo App Dashboard.
  2. Descrivi il tuo modello di dati desiderato (ad es., “Per favore crea una nuova classe Task per app mobili con i campi isCompleted e dueDate.”).
  3. Lascia che l'agente crei lo schema automaticamente.
Document image


Dati Relazionali

Se desideri dati relazionali—come un oggetto Categoria che punta a più Task—usa Puntatori o Relazioni in Parse:

JS


Questo approccio ti aiuta a recuperare dati completi per un Task e la sua Categoria correlata in un'unica query.

Query Live

Per aggiornamenti in tempo reale, abilita Query Live nelle Impostazioni del Server nel dashboard di Back4app. Gli sviluppatori di NativeScript possono iscriversi a modifiche in una classe specifica. Aggiorna la tua configurazione Parse per includere un URL del server Live Query:

src/parseConfig.js


E poi iscriviti agli eventi in tempo reale:

JS


Questa iscrizione aggiorna automaticamente la tua interfaccia utente ogni volta che una Task viene aggiunta, modificata o rimossa—perfetta per app NativeScript collaborative in tempo reale.

Passo 3 – Applicare la Sicurezza con ACL e CLP

Meccanismo di Sicurezza Back4app

Back4app incorpora Liste di Controllo degli Accessi (ACL) e Permessi a Livello di Classe (CLP) per proteggere i tuoi dati. Questi modelli di sicurezza ti consentono di controllare l'accesso in lettura/scrittura sia a livello di classe che di oggetto.

Document image


Liste di Controllo degli Accessi (ACL)

Un ACL imposta i permessi per ogni oggetto. Ad esempio, per dare solo al proprietario accesso in lettura e scrittura:

JS


Questo garantisce che solo l'utente specificato possa modificare o leggere l'oggetto.

Modifica ACL
Modifica ACL


Permessi a Livello di Classe (CLP)

I CLP impostano i permessi predefiniti per un'intera classe:

  1. Apri il Database in Back4app e seleziona la classe pertinente.
  2. Accedi ai Permessi a Livello di Classe.
  3. Regola i permessi per il pubblico, gli utenti autenticati o ruoli specifici secondo necessità.
Document image


Combinare ACL e CLP offre un modello di sicurezza robusto per le app NativeScript. Per ulteriori informazioni, vedere Linee Guida sulla Sicurezza delle App.

Passo 4 – Scrivere e Distribuire Funzioni Cloud

Il Cloud Code ti consente di eseguire codice JavaScript personalizzato sul lato server, quindi non è necessario mantenere l'infrastruttura da solo. Questo è ideale per aggiungere logica avanzata o integrazioni solo server nel tuo backend NativeScript.

Come Funziona

Di solito posizioni il tuo Cloud Code (funzioni JavaScript, trigger e eventuali moduli NPM richiesti) in un main.js file. Poi lo distribuisci su Back4app e viene eseguito nell'ambiente del Parse Server senza configurazione aggiuntiva del server.

Esempio di Struttura main.js:

JS


Puoi installare e utilizzare pacchetti NPM come axios per le richieste HTTP. Questo approccio consente una vasta gamma di integrazioni, dai gateway di pagamento alle API esterne, tutto dietro la sicurezza della tua app Back4app.

Casi d'Uso Tipici

  • Logica Aziendale: Calcoli automatici, trasformazioni di dati o aggiornamenti di stato.
  • Validazioni dei Dati: Assicurati che i campi richiesti siano presenti prima del salvataggio.
  • Trigger: Esegui codice quando i dati vengono creati, aggiornati o eliminati.
  • Integrazioni: Collega servizi esterni per pagamenti, analisi o messaggistica.
  • Applicazione della Sicurezza: Valida i dati in arrivo o i ruoli degli utenti prima di procedere.

Distribuisci la Tua Funzione

Ecco una funzione semplice che calcola la lunghezza del testo:

main.js


Distribuzione tramite Back4app CLI:

  1. Installa il CLI:
Bash


Per Windows, scarica il b4a.exe file dalla pagina delle versioni.

  1. Configura la tua chiave account:
Bash

  1. Distribuisci il tuo codice cloud:
Bash


Distribuzione tramite il Dashboard:

  1. Vai a Cloud Code > Functions nel tuo dashboard.
  2. Incolla il tuo codice funzione in main.js.
  3. Clicca su Deploy.
Document image


Chiamare la tua funzione

Dalla tua app NativeScript utilizzando il Parse SDK:

JS


Puoi anche chiamarlo utilizzando REST o GraphQL:

Bash

GraphQL


Questo ti offre un modo flessibile per integrare la logica lato server nelle tue app mobili basate su NativeScript.

Passo 5 – Configurazione dell'autenticazione utente

Autenticazione Utente in Back4app

Back4app utilizza la classe Parse User per gestire l'autenticazione, che include l'hashing delle password, i token di sessione e altro ancora. Questo elimina gran parte della complessità associata alla gestione degli account utente.

Impostazione dell'Autenticazione Utente

Nella tua app NativeScript, puoi creare un nuovo utente:

JS


Un esempio REST potrebbe apparire così:

Bash


Gestione delle Sessioni

Dopo aver effettuato il login, Parse assegna un token di sessione all'utente. Per controllare l'utente attualmente connesso:

JS

JS

JS

JS

JS

JS


Disconnettersi è semplice:

JS


Integrazione del Login Sociale

Parse si integra anche con fornitori OAuth come Google o Facebook. La configurazione varia a seconda del fornitore, quindi consulta Accedi con Apple e Altri per i dettagli. Ad esempio, con Facebook:

JS


Verifica Email e Ripristino Password

Abilita queste funzionalità nel tuo dashboard di Back4app:

  1. Naviga su Impostazioni Email nella tua app Back4app.
  2. Abilita la verifica email e il ripristino della password.
  3. Configura i tuoi modelli email e l'indirizzo 'Da'.

Passo 6 – Gestione dello Storage dei File

Caricamento e Recupero di File

Back4app supporta la gestione dei file attraverso la Parse.File classe. In NativeScript, puoi caricare immagini o documenti in modo simile:

JS


Puoi recuperare l'URL del file dall'oggetto salvato:

JS


Sicurezza dei File

Parse Server ti consente di configurare la sicurezza del caricamento dei file:

JSON


Questo assicura che tu possa limitare o consentire i caricamenti di file in base alle tue preferenze di sicurezza.

Passo 7 – Pianificazione di Compiti con Cloud Jobs

Lavori nel Cloud

Lavori nel Cloud ti aiutano ad automatizzare compiti di routine, come rimuovere record obsoleti o inviare notifiche. Ad esempio:

JS

  1. Distribuisci questo lavoro tramite CLI o il dashboard.
  2. Nel Dashboard di Back4app > Impostazioni del server > Lavori in background, programmarlo per essere eseguito quotidianamente o a un intervallo di tua scelta.
Pianificazione di un lavoro nel Cloud
Pianificazione di un lavoro nel Cloud


Passo 8 – Integrazione dei Webhook

Webhook ti consentono di inviare richieste HTTP a servizi esterni quando si verificano determinati eventi nella tua app, come nuovi record o registrazioni di utenti. Questo può essere utilizzato per integrarsi con Slack, gateway di pagamento o piattaforme di analisi.

  1. Vai alla configurazione dei Webhook nel tuo dashboard di Back4app e seleziona Aggiungi Webhook.
  2. Aggiungi il tuo endpoint URL (ad es., https://your-service.com/webhook).
  3. Configura i trigger per classi o eventi specifici.
Aggiunta di un Webhook
Aggiunta di un Webhook


Puoi anche definire webhook nel Cloud Code o chiamare API esterne direttamente nei trigger come beforeSave o afterSave.

BeforeSave WebHook
BeforeSave WebHook


Passo 9 – Esplorare il Pannello di Amministrazione di Back4app

L' App di Amministrazione di Back4app è un'interfaccia centrata sul modello e facile da usare per la gestione dei dati. Aiuta i team o gli utenti non tecnici a eseguire operazioni CRUD, creare dashboard personalizzate e gestire compiti a livello aziendale senza scrivere codice.

Abilitare l'App di Amministrazione

  1. Nel tuo Dashboard dell'App, clicca su Altro > App di Amministrazione.
  2. Abilita l'App di Amministrazione.
Abilita l'App di Amministrazione
Abilita l'App di Amministrazione


Crea un primo utente amministratore (nome utente/password). Questa configurazione aggiunge il B4aAdminUser ruolo e le classi associate (B4aSetting, B4aMenuItem, ecc.) al tuo schema.

Document image


Scegli un sottodominio, quindi accedi con le tue nuove credenziali di amministratore:

Document image

Document image


Questo portale consente una rapida manipolazione dei dati senza lasciare un'interfaccia grafica—una grande soluzione per collaborare con membri del team che potrebbero non essere familiari con la programmazione.

Conclusione

Seguendo questa guida, hai imparato come costruire un backend per NativeScript utilizzando Back4app e:

  • Creato un backend sicuro per le tue app NativeScript.
  • Configurato un database con classi, schemi e relazioni.
  • Implementato query in tempo reale per aggiornamenti live.
  • Protetto i tuoi dati con ACL e CLP.
  • Esteso la funzionalità con Cloud Code.
  • Impostato l'autenticazione per la registrazione, il login e i token di sessione.
  • Gestito il caricamento di file e il recupero tramite Parse File.
  • Pianificato Cloud Jobs per compiti automatizzati e periodici.
  • Creato Webhook per integrazioni di terze parti.
  • Utilizzato il Pannello di Amministrazione di Back4app per la gestione dei dati senza codice.

Questi passaggi formano una base solida per costruire app mobili open source e multipiattaforma con NativeScript Core. Continua a esplorare funzionalità avanzate, incorpora più endpoint API o integra la tua logica personalizzata per adattare il backend alle esigenze esatte della tua app.

Prossimi Passi

  • Scala le tue app NativeScript ottimizzando le prestazioni, la memorizzazione nella cache e le regole di sicurezza.
  • Esplora la gestione avanzata degli utenti come le autorizzazioni basate sui ruoli.
  • Controlla la documentazione ufficiale di Back4app per guide dettagliate su sicurezza, registri e prestazioni.
  • Sperimenta con integrazioni del mondo reale come strumenti di pagamento o di analisi.

Buon coding e goditi il flusso di lavoro di sviluppo semplificato che Back4app offre!