AWS Amplificare Rende la Costruzione di Applicazioni Mobile Semplice

0
196

AWS Amplificare è un framework progettato per rendere la creazione di siti web e applicazioni native molto più facile. Esso si concentra su una cucina completamente costruito backend out of the box—in esecuzione di un’API di database e con l’autenticazione è gestita per voi.

Che cosa È AWS Amplificare?

Amplificare non prendere il posto di un quadro di come Reagire—siete liberi di utilizzare qualsiasi frontend che si desidera (anche se reagire, Reagire, Nativo, Vue, Android e iOS sono più supportati con librerie specifiche). Amplificare dovrà gestire il back-end, cose come l’esecuzione di un server API, la gestione del database, e l’autenticazione dei client.

Quando si crea un Amplificare progetto, back-end le risorse saranno accantonati automaticamente utilizzando CloudFormation. Quando si aggiunge un’API, verrà semplicemente chiesto di definire lo schema, e un DynamoDB tabella verrà creato per voi, con il gestore di metodi per la sottoscrizione, l’interrogazione e l’aggiornamento delle voci di essere generato. Se si desidera avvolgere una di terze parti per la gestione dello stato come strumento di Redux intorno Amplificare il backend, si può fare così.

Per l’autenticazione, Amplificare può essere collegato ad Amazon Cognito, un versatile identità di gestione del servizio. Cognito in grado di gestire MFA, utente di accedere e registrarsi, servizi di directory, e la federazione di accessi ai social provider (Google, Facebook), o anche il proprio server di Active Directory su SAML.

Amplificare contiene anche una libreria di interfaccia utente ricca di componenti utili, simile al Bootstrap. Tuttavia, Amplificare l’interfaccia utente della biblioteca è focalizzato sulla funzionalità dei flussi, come utente di registrarsi e accedere, foto e file di upload, e AWS Lex-powered chatbots. Utilizzando il componente di autenticazione, ad esempio, consentono di collegare il vostro app per Amplificare auth del backend (Cognito) molto più facile.

È possibile, naturalmente, di estendere questi con il proprio codice e colori, se non sei un fan di AWS iconico arancione.

Guida Introduttiva

Se desideri hop e giocare con l’amplificazione, la configurazione è abbastanza semplice. Installare Amplificare CLI in tutto il mondo dal npm:

npm install-g @aws-amplificare/cli

Per l’effettiva applicazione, noi provvederemo a creare un semplice Reagire app utilizzando Reagire proprio creare-reagire-app starter modello:

npx creare-reagire-app amplificare

cd a questa nuova cartella e installare Amplificare come npm dipendenza:

npm install @aws-amplificare/api @aws-amplificare/pubsub

Eseguire npm start, e si dovrebbe vedere la filatura Reagire logo aperta nel browser.

Se si desidera fare uso di Amplificare opzionale UI library, che è disponibile come pacchetto separato per Reagire:

npm install aws-amplificare-reagire

Una volta che tutto è installato lato client, è possibile impostare il vostro Amplificare progetto utilizzando la riga di comando:

amplificare init

Questo richiederà un po ‘ di informazioni, come il nome dell’ambiente (sviluppo, produzione, etc.), il tipo di applicazione che si sta costruendo (JavaScript, Reagire Nativo), e l’origine e la configurazione. Entrare in tutto ciò, se necessario, e Amplificare avrà una seconda per impostare il backend.

Questo sarà agganciare Amplificare il AWS Console, ma dovrete fare un po ‘ di più il programma di installazione per ottenere l’API e l’esecuzione.

L’aggiunta di Un API

Per impostare Amplificare l’API di backend, eseguire:

amplificare aggiungere api

Questo vi chiederà alcune domande, la prima è il tipo di API. Se si desidera utilizzare un GraphQL o API di Riposo, si dovrà fare la scelta qui. Andiamo con GraphQL.

Potrete anche scegliere uno schema di autenticazione—se stai testando le cose, è possibile scegliere API key per l’autenticazione in fase di sviluppo. In produzione, però, è probabile che si desidera impostare AWS Cognito per la gestione degli utenti e link per Amplificare consigliata auth schema per Amplificare le app.

Ti verrà chiesto di definire lo schema per le API, che aprirà l’editor di testo predefinito. Amplificare utilizzerà questo per configurare DynamoDB.

Una volta che è impostato, eseguire amplificare push per inviare le modifiche al cloud. Amplificare chiederà se si desidera creare il GraphQL funzioni per interagire con le API, che consente di generare automaticamente i metodi per le query, le sottoscrizioni e le mutazioni.

La prima volta che si preme un DynamoDB tabella saranno accantonati e configurato automaticamente. È possibile visualizzare la tabella da Amplificare console:

Ma se si desidera apportare modifiche allo schema, si ‘ ll hanno a che fare, tramite la console. Amplificare la configurazione del backend è memorizzato in:

progetto/dettagliare/backend/

con le API di configurazione memorizzati in api/amplificare. Se si apportano modifiche, ed eseguire amplificare spingere ancora, apportare modifiche ai CloudFormation stack.

Per utilizzare le API, è possibile importare PubSub da Amplificare, e configurarlo per utilizzare la configurazione che Amplificano messo in src/aws-exports.js

importazione di API, { graphqlOperation } da ‘@aws-amplificare/api’;
importazione PubSub da ‘@aws-amplificare/pubsub’;

importazione awsconfig da ‘./aws-esportazioni;

// Configurare Amplificare
API.configurare(awsconfig);
PubSub.configurare(awsconfig);

È quindi possibile utilizzare l’API oggetto per fare i collegamenti. Per esempio, se si sta utilizzando GraphQL, è possibile importare la mutazione metodi e chiamare uno di loro utilizzando API.graphql(metodo):

importazione { createTodo } dall’ ‘./graphql/mutazioni’;

funzione async createNewTodo() {
const todo = { nome: “nuovo elemento” , descrizione: “Ciao Amplificare!” };
attendono API.graphql(graphqlOperation(createTodo, { input: todo }));
}

La Pubblicazione Di Amplificare App

Sei libero di distribuire Amplificare app però si vede in forma, ma se siete pubblicazione di una web app, Amplificare include alcune funzioni built-in per la distribuzione automatica di app per S3. L’opzione predefinita è per un ambiente dev, senza HTTPS, ma può essere configurato per l’utilizzo di CloudFront così. Un’alternativa può essere quella di impostare un sistema automatizzato S3 deployment pipeline da CodePipeline, o semplicemente in hosting su un server web esistente, invece.

Se si desidera distribuire S3, è sufficiente aggiungere il web hosting caratteristica da CLI:

amplificare aggiungere hosting

Questo vi chiederà se si sta distribuendo ai dev o prod, e chiedere l’indice di errore e di documenti per il tuo sito. Una volta configurato, eseguire amplificare pubblica per spingere un nuovo CloudFormation stack.

Il tuo browser si aprirà il nuovo endpoint per la vostra applicazione, che è possibile aggiungere al vostro DNS con un record CNAME o una Rotta 53 secchio Alias.