De release van EasyREST 0.8 heeft plaatsgevonden, een lichtgewicht uitbreidbare REST-service voor het uitvoeren van CRUD- en geaggregeerde aanvragen aan relationele databases. Het project is geschreven in de Go-taal en maakt gebruik van een pluginsysteem voor verbinding met verschillende databasesystemen (SQLite, MySQL, PostgreSQL, Redis). De code wordt verspreid onder de Apache 2.0-licentie. Voor het opstarten is het voldoende om het uitvoerbare bestand te bouwen of te downloaden en de plugins op te geven in het YAML-configuratiebestand of via omgevingsvariabelen.
Belangrijkste kenmerken van het project:
- Ondersteuning voor meerdere databasesystemen van verschillende typen via plugins (SQLite, MySQL, PostgreSQL, Redis).
- Ondersteuning voor HTTP-caching via ETag.
- Toegangscontrole op niveau de server via scope-controle en JWT (optioneel voor anonieme gebruikers).
Belangrijkste wijzigingen:
- De mogelijkheid voor anonieme toegang is toegevoegd (zonder JWT-token) en configuratie van claims voor anonieme gebruikers.
- Configuratie van uitzonderingen voor toegang tot bepaalde views, tabellen en functionaliteiten via de API is gerealiseerd.
- Een bug is verholpen waardoor een aanvraag met If-None-Match mogelijk een 304-statuscode teruggeefde vóór de autorisatiecontrole.
- De snelheid van de serializer voor Swagger-schema's ter beschrijving van de API is verhoogd.
- Om de veiligheid en stabiliteit te verbeteren, zijn kritieke afhankelijkheden geüpdatet naar de laatste versies.
Bron: opennet.ru
