Supporto OpenAPI in WaveMaker

Supporto OpenAPI in WaveMaker

Oltre a questo, va ricordato che ogni volta che Wavemaker aggancia una sorgente dati, include oggetti JAVA o oggetti provenienti da altre fonti; crea automaticamente il file Swagger e la relativa documentazione in formato OpenAPI 2.0  e 3.0.

Ogni giorno OneClickApp aggiunge ai suoi servizi per i clienti  nuove possibilità di dialogo semplice tra microservizi, ampliando e togliendo l’onere del mantenimento della documentazione delle API agli sviluppatori, aiutando gli API consumer a integrarsi con gli applicativi dei propri clienti.

Usando gli open standards siamo sempre più veloci sullo sviluppo, sull’integrazione e sul delivery applicativo; evitando di aggiungere codice “from scratch” per le funzioni basiche e non strategiche delle apps.

Vediamo come funziona.

Introduzione a OpenAPIs

OpenAPI è uno standard di settore ampiamente adottato per descrivere le API moderne. Lo sviluppo della specifica è favorito da OpenAPI initiative. È importante aver chiara con la differenza tra OpenApi e swagger .

La specifica OpenAPI (OAS) definisce una descrizione dell’interfaccia standard, indipendente dal linguaggio di programmazione per le API REST, che consente sia agli umani che ai computer di scoprire e comprendere le capacità di un servizio senza richiedere l’accesso al codice sorgente, documentazione aggiuntiva o una ispezione del traffico di rete. Un documento (o un insieme di documenti) che definisce o descrive un’API è chiamato documento di definizione OpenAPI. Una definizione OpenAPI utilizza e si conforma alla specifica OpenAPI. La specifica può essere trovata qui .

 

Vantaggi di lavorare con OpenAPIs

Poiché un documento di definizione OpenAPI segue una specifica OpenAPI standard, il documento può essere utilizzato dagli strumenti di generazione della documentazione per visualizzare l’API, strumenti di generazione del codice per generare server e client in vari linguaggi di programmazione, strumenti di test e molti altri casi d’uso.

WaveMaker estende questo vantaggio per integrare gli endpoint REST in un’applicazione Web/Mobile. WaveMaker genera l’interfaccia utente per le operazioni di Create, Read, Update ed Delete (CRUD) per le API REST conformi alla specifica OpenAPI. In questo modo, anche l’integrazione di un endpoint REST con uno degli oltre 100 widget dell’interfaccia utente offerti da WaveMaker è semplice e diretta senza scrivere una sola riga di codice.

Poiché un documento OpenAPI contiene una serie di API, WaveMaker identifica e raggruppa un insieme di API sotto rispettive “entità” . Ad esempio, in un documento OpenAPI, possono esserci più endpoint REST per un’entità chiamata ad. es. Employee. Potrebbero esserci rispettivi endpoint per eseguire operazioni CRUD su questa entità. Durante l’importazione del documento OpenAPI in WaveMaker, la piattaforma esegue un algoritmo di ipotesi migliore per identificare e mappare gli endpoint rispetto alla rispettiva operazione CRUD.

Una volta fatto, lo sviluppatore dell’app può utilizzare le combinazioni di widget Dati come Tabelle/Liste con un modulo ed eseguire operazioni CRUD dall’interfaccia utente mediante una semplice configurazione di trascinamento della selezione senza scrivere una singola riga di codice.

Questo apre una vasta gamma di possibilità per l’integrazione della piattaforma con API REST di terze parti. Per dirne alcuni:

  • supportare varie tecniche di impaginazione / frammentazione / ordinamento lato server
  • identificare le relazioni tra le varie “entità”
  • esecuzione di complesse operazioni di filtro su un’entità
  • supportare vari meccanismi di autenticazione / autorizzazione

Noi di OneClickApp stiamo lavorando per identificare tutti questi modelli e integrarli con la piattaforma e con API di terze parti, cercando di fornire per i nostri clienti un’esperienza di integrazione senza limiti.

Terremo aggiornato il  nostro Blog  su questi argomenti.

Importazione del documento OpenAPI in WaveMaker

Se si dispone già di un documento API conforme alla specifica OpenAPI 2.0, è possibile importarlo nel progetto dell’app WaveMaker e integrarlo con i widget dell’interfaccia utente. C’è un esempio nella documentazione ufficiale per questo, fai riferimento al seguente documento su come farlo, o chiedi il nostro supporto:
Importazione di API REST tramite OpenAPI / Swagger

Importazione delle API di un’app WaveMaker esistente in un’altra app

La buona notizia è che tutte le API generate da un’app WaveMaker seguono le specifiche OpenAPI 2.0. Pertanto, le API di un’app WaveMaker sono prontamente disponibili per l’integrazione in un’altra app. Tutto quello che devi fare è prendere il file JSON OpenAPI/swagger dall’app esistente e importarlo nell’altra app in cui desideri utilizzare le API. Non è più necessario importare ogni API singolarmente, il che è un notevole risparmio di tempo.

Inoltre, come accennato in precedenza, la piattaforma identificherà le “entità” dal documento OpenAPI e raggrupperà gli endpoint sotto di esse. Quindi ora puoi eseguire le operazioni CRUD su un’entità DB proprio come potresti farlo tramite una variabile DB CRUD (live) senza creare singole variabili di servizio su ciascun endpoint e scrivere logica personalizzata per collegare queste operazioni. Ecco una rappresentazione del caso d’uso:
Apri caso d'uso di importazione API

Generazione del documento OpenAPI per le API esistenti

Se hai scelto una piattaforma RAD come WaveMaker per creare/modernizzare un’app, è probabile che tu abbia già un set di API con cui utilizzare e collegare l’interfaccia utente. Questi endpoint possono trovarsi su varie tecnologie back-end, ma il vantaggio di un documento OpenAPI è che è indipendente dal linguaggio di sviluppo.

Grazie alla natura open source dello standard OpenAPI, un’ampia varietà di framework supporta la generazione automatica del documento OpenAPI tramite codice. Di seguito è riportato un elenco di strumenti specifici della lingua che puoi utilizzare per generare il documento OpenAPI per le tue API.

Java

Gli sviluppatori Spring possono utilizzare springfox , mentre gli sviluppatori JAX-RS possono sfruttare lo swagger-core . Il plugin Swagger Maven funziona con entrambi.

ASP.NET

Anche il mondo Microsoft supporta OpenAPI. Gli sviluppatori ASP.NET possono installare il pacchetto Swashbuckle e generare facilmente una specifica per le loro API.

Python

Gli sviluppatori Django possono aggiungere il modulo django-rest-swagger tramite pip, mentre Flask-RESTPLUS ha il supporto Swagger integrato.

Javascript/Node

Le applicazioni integrate in Node utilizzano spesso Express o HAPI come framework. Per questi sono disponibili moduli di terze parti chiamati swagger-express e hapi-swagger .

Ruby

La gemma di spavalderia dell’uva fornisce pieno supporto OpenAPI e funziona bene con altre gemme, come l’ entità dell’uva . Con quest’ultimo, è possibile definire modelli e utilizzarli nella specifica così come per la convalida dell’input.

Go

Goswagger è disponibile per tutti gli sviluppatori Go. È un pacchetto di grandi dimensioni che non si limita al caso d’uso di API autodocumentati ma consente tutti i tipi di lavoro con le definizioni Swagger e OpenAPI in Go.

 

OneClickApp sta lavorando anche all’integrazione di OpenApi e Wavemaker con GraphQL.

Tutti questi concetti che portiamo avanti, sono frutto dell’esperienza e della partnership con Wavemaker e stanno servendo ai nostri clienti e sviluppatori per definire sempre di più un nuovo metodo di lavoro basato sul low-code; portando più velocità e astrazione delle complessità, quindi generando valore di business su tecnologie Open.