REST
REST beskriver arkitekturregler för distribuerade gränssnitt. Resurser, tillståndslösa anrop och länkar ingår i arbetssättet.
Att nå resurser genom ett enhetligt gränssnitt
REST står för Representational State Transfer och är en arkitekturstil. Applikationer utbyter representationer av resurser, till exempel ett projekts aktuella tillstånd. Reglerna omfattar åtskillnad mellan klient och server, tillståndslösa anrop, information om svar får cachelagras och ett enhetligt gränssnitt. Länkar i representationerna leder till möjliga nästa steg; en HTTP-adress som returnerar JSON uppfyller inte ensam dessa regler.
I en fiktiv projektportal hämtar applikationen en projektrepresentation med GET /projects/P-42. Den innehåller också en länk till /projects/P-42/tasks, som är tänkt att ge tillgång till de tillhörande uppgifterna. Båda sökvägarna är våra egna designexempel. Anropet måste innehålla den information servern behöver för att förstå det; servern bör inte behöva återskapa en tidigare dialog med denna klient. Projektdata får fortfarande lagras beständigt. Tillståndslös beskriver här kommunikationen, inte avsaknaden av en databas.
Ett integrationsteam behöver därför undersöka hur resurser, länkar, behörigheter och återanvändning av svar faktiskt regleras. Etiketten REST besvarar inte ensam dessa frågor.
Källor
Relaterade begrepp
- APIEtt API anger hur programvara kan använda funktioner eller data som annan programvara erbjuder.
- GraphQLGraphQL låter applikationer begära fält genom ett typat API-schema. Servern ansvarar fortfarande för dataåtkomst och behörigheter.
- OpenAPIOpenAPI beskriver HTTP-gränssnitt maskinläsbart med sökvägar, parametrar och svar. Beskrivningen ska stämma med tjänsten som körs.
- Server-Sent EventsServer-Sent Events skickar textmeddelanden från server till klient via HTTP, exempelvis om ett bakgrundsjobbs förlopp.
- ETagEn ETag identifierar en viss representationsversion av en HTTP-resurs och stöder villkorade hämtningar eller ändringar.
- Cross-Origin Resource SharingCORS styr webbläsarens åtkomst till svar från en annan origin. Det ersätter varken API-inloggning eller behörighetskontroll.
Ditt projekt med ASES
Beskriv ditt projekt för oss. Vi hör av oss med en första bedömning.