EasyREST 0.8 er lansert, en lettvekts, utvidbar REST-tjeneste for å utføre CRUD- og aggregerte forespørseler mot relasjonsdatabaser. Prosjektet er skrevet i Go og benytter et pluginsystem for å koble til forskjellige DBMS (SQLite, MySQL, PostgreSQL, Redis). Koden distribueres under Apache 2.0-lisensen. For å kjøre det, er det nok å kompilere eller laste ned den kjørbare filen og angi plugin-modulene i YAML-konfigurasjonsfilen eller via miljøvariabler.
Nøkkelfunksjoner i prosjektet:
- Støtte for flere DBMS av forskjellige typer gjennom plugins (SQLite, MySQL, PostgreSQL, Redis).
- Støtte for HTTP-caching gjennom ETag.
- Tilgangskontroll på nivå serveren gjennom «scope»-sjekk og JWT (valgfritt for anonyme brukere).
Hovedendringer:
- Mulighet for anonym tilgang (uten JWT-token) og konfigurasjon av «claims» for anonyme brukere er lagt til.
- Konfigurasjon av unntak fra tilgang til bestemte visninger, tabeller og funksjoner via API er implementert.
- Feilen som gjorde at forespørselen med If-None-Match kunne returnere statuskode 304 før autorisasjonssjekk ble utført er rettet.
- Hastigheten på serialisering av Swagger-skjemaer for API-beskrivelse er forbedret.
- For å øke sikkerheten og stabiliteten er kritiske avhengigheter oppdatert til de nyeste versjonene.
Kilde: opennet.ru
