Endpoints zijn een essentieel onderdeel van bedrijfsprocessen en applicatieontwikkeling in het algemeen. In dit artikel definiëren we wat endpoints zijn, waarom we ze nodig hebben en hoe we ze op het AppMaster.io-platform kunnen aanmaken.
Wat is een endpoint?
Een endpoint is een gateway die de serverprocessen van de applicatie verbindt met een externe interface. Met andere woorden, dit is het adres waarnaar verzoeken worden gestuurd.
Het is belangrijk te vermelden hoe de API werkt om te begrijpen wat endpoints zijn. API is een afkorting voor application programming interface. Toepassingen gebruiken API's om te communiceren met diensten van derden en hun gebruikers.
Om verbinding te maken met de API moet u een verzoek sturen. Voor een correcte verwerking van het verzoek moet de client een universele resource pointer (URL), een HTTP-methode en, afhankelijk van de methode, headers, body en verzoekparameters toevoegen. De headers leveren metadata over het verzoek, terwijl de body gegevens bevat, zoals velden voor nieuwe rijen in de database.
De API verwerkt het verzoek en verstuurt het antwoord dat hij van de server ontvangt. Het antwoord bevat een statuscode, een deel van het HTTP-antwoordbericht dat de client informeert over het resultaat van het verzoek. Bijvoorbeeld, code 200 wordt gebruikt als de operatie met succes is voltooid, 500 als er een interne serverfout is opgetreden.
Endpoints werken samen met API-methoden. Dit zijn specifieke URL's die de toepassing gebruikt om te communiceren met diensten van derden en haar gebruikers. Een URL is een route die verschillende verzoekmethodes kan verwerken. Elk type verzoek is een apart eindpunt. Er zijn vijf hoofdtypen:
- GET - krijgt informatie van de server; het vereist geen request body;
- POST - creëert een nieuw object in de database, vereist een request body met de velden van dit object;
- PUT - zet een specifiek object volledig terug in de database;
- PATCH - vergelijkbaar met PUT, reset een specifiek object in de database, maar het zal alleen de velden bijwerken die worden genoemd in de request body;
- DELETE - verwijdert het object uit de database.
Bij het aanmaken van een specifiek verzoek kunnen diverse parameters worden toegevoegd. De combinatie van deze parameters en de URL vormt een URI - Uniform Resource Identifier. Het geeft aan waar en hoe de bron te vinden is.
Hoe kunt u endpoints configureren op het AppMaster.io platform?
In de sectie Endpoints van het AppMaster.io-platform ziet u alle automatisch gegenereerde endpoints en de endpoints van uw project. Als de auto-generatie van schermen en pagina's in uw project is ingeschakeld, worden er automatisch de bijbehorende endpoints aangemaakt voor elk aangemaakt datamodel. Ook kunnen endpoints automatisch worden aangemaakt bij de installatie van sommige modules, bijvoorbeeld Autorisatie (Auth), Landen en steden en andere.
Met AppMaster.io kunt u werken met verschillende soorten eindpunt-API's:
- API voor toegang tot de backend vanuit de client en systemen van derden;
- webhooks voor het ontvangen van meldingen van systemen van derden;
- WebSockets, voor het openen van een tweeweg interactieve communicatiesessie tussen een browser en een server zonder de server om een antwoord te vragen.
Alle eindpunten zijn gegroepeerd. Binnen elke groep vindt u alle corresponderende endpoints, hun verzoektypen, URL's en de bedrijfsprocessen waarmee ze verbonden zijn. Alle endpoints kunnen door u worden verwijderd en bewerkt.
Bij het aanmaken of bewerken van een endpoint zijn de volgende opties beschikbaar in het configuratievenster:
- Aanvraagmethode. GET, POST, PUT, DELETE of PATCH.
- Request URL. Het eerste deel met het pad naar de server wordt niet gespecificeerd, omdat dit hetzelfde is voor alle applicatie-eindpunten. Het is voldoende om het einde in te stellen, bijvoorbeeld /users. Ook de URL-parameter wordt hier gespecificeerd. Stel dat het eindpunt is ontworpen om informatie te ontvangen over een specifieke gebruiker. In dat geval moet zijn ID achter ":" worden geschreven (/users/:id) en als parameter worden doorgegeven.
- Eindpuntgroepen. Deze parameter is bedoeld om het werken met endpoints te organiseren en te structureren. Alle endpoints kunnen worden onderverdeeld in groepen (mappen).
- Bedrijfsproces. Een van de meest kritische parameters die bepalen wat het endpoint gaat doen. Tegelijkertijd kan het endpoint zelf ongewijzigd blijven. Het zal dezelfde verzoeken ontvangen op het oude adres, en als het bedrijfsproces wordt vervangen, zal het een andere functie uitvoeren. Bedrijfsprocessen voor basis databasebewerkingen worden automatisch aangemaakt. U kunt ze niet bewerken, maar indien nodig kunt u ze vervangen door aangepaste BP's.
Ook kunt u middleware instellen. Middleware is intermediaire software die dient als filter bij het verwerken van applicatieverzoeken. Middleware wordt gebruikt om eventuele voorwaarden te controleren voordat een verzoek wordt uitgevoerd. Als u bijvoorbeeld middleware maakt om de authenticatie van gebruikers te controleren, zal de middleware de gebruiker doorverwijzen naar de inlogpagina als de gebruiker niet is ingelogd. Als hij wel is ingelogd, zal de middleware zich niet bemoeien met de verwerking van het verzoek en het doorgeven aan de client.
Een eindpunt aanmaken in AppMaster.io
Laten we de configuratie van endpoints in de praktijk bekijken en analyseren aan de hand van het voorbeeld van het Aviato project. Het volledige proces van het aanmaken van dit project kunt u vinden in de AppMaster.io cursus.
Binnen het project hebben we twee bedrijfsprocessen gecreëerd:
- Validate and create flights - het proces dat gebruikt zal worden om het Create flight business process te vervangen;
- Registreer passagier - voor het registreren van een passagier voor een specifieke vlucht.
Nu kunnen we deze processen gebruiken om eindpunten op te zetten in het project.
Laten we beginnen met het Valideer en creëer vluchten bedrijfsproces. De Flight groep heeft al een POST/flights endpoint voor het aanmaken van een vlucht. Nu moeten we het bijgevoegde bedrijfsproces vervangen door een nieuwe. Daartoe moeten we het eindpunt bewerken.
Selecteer in het configuratievenster het gewenste bedrijfsproces. In ons geval is dat een Validate and create flights BP. Daarna moeten we alle vereiste invoervariabelen selecteren en de wijzigingen opslaan.
Nu kunnen we het volgende eindpunt instellen voor het Register passenger business process.
Ons doel is om een sectie te maken om een specifieke vlucht en passagiers die ermee verbonden zijn te bekijken en een proces op te zetten voor het registreren van nieuwe passagiers.
In de eindpuntgroep Vluchten moeten we een nieuw eindpunt aanmaken: /flights/:id/register, waarbij id verwijst naar een specifieke vlucht die we kunnen gebruiken als input in een bedrijfsproces.
Door op het Plus-pictogram te klikken, kunnen we een nieuw eindpunt toevoegen. De request-methode zal POST zijn, aangezien we een nieuw object aanmaken. We selecteren het Register passenger proces voor onze BP en slaan alle gemaakte wijzigingen op.
Dat is hoe eenvoudig het is om eindpunten aan te maken op het AppMaster.io platform. Volledige video tutorial:
Conclusie
Endpoints spelen een vitale rol in de werking van de API, die op zijn beurt noodzakelijk is voor het uitbreiden van projecten en handige integratie van diensten en toepassingen. No-code platform AppMaster.io maakt het gemakkelijk om te werken met endpoints te creëren en te configureren. U kunt zich altijd registreren op het platform en alle functionaliteiten bekijken.