Ukukhutshwa kwePostgREST 9.0.0, izongezo zokuguqula i-database ibe yi-RESTful API

I-PostgREST 9.0.0 ikhutshwe, i-server yewebhu esebenzayo ngokuhlukileyo kunye nokuphunyezwa kwe-add-on lightweight kwi-PostgreSQL DBMS, ukuguqulela izinto ezivela kwisiseko sedatha ekhoyo kwi-RESTful API. Esikhundleni sokwenza imephu yedatha yobudlelwane kwizinto (ORMs), iPostgREST idala iimbono ngokuthe ngqo kwisiseko sedatha. Icala lesiseko sedatha likwaphethe ulandelelwano lweempendulo ze-JSON, ukuqinisekiswa kwedatha, kunye nokugunyaziswa. Ukusebenza kwenkqubo kwanele ukuqhubela phambili ukuya kwizicelo ze-2000 ngesibini kwiseva eqhelekileyo. Ikhowudi yeprojekthi ibhalwe kwi-Haskell kwaye isasazwe phantsi kwelayisenisi ye-MIT.

Umzekelo, usebenzisa kuphela indlela yelungelo lesiseko sedatha, unokunika ufikelelo kwidatha (iitafile, iindidi zokujonga, kunye neenkqubo ezigciniweyo) ngaphezulu kweHTTP. Kule meko, akukho mfuneko yokufaka ikhowudi yoguqulelo olunjalo kwaye ngokuqhelekileyo umyalelo omnye we-GRANT wanele ukwenza itafile ifumaneke nge-REST API. Kunokwenzeka ukuqwalasela ukufikelela ngethokheni (JWT) kwaye uququzelele "i-multitenancy" ngokusetyenziswa kokhuseleko lwenqanaba lomqolo (Row Level Security).

Ngokokwakha, iPostgREST ityhala isiya kulwakhiwo olujolise kwidatha (iData-Oriented Architecture), apho iimicroservices zingasindisi ilizwe ngokwazo, kodwa zisebenzisa ufikelelo olunye kwidatha (uMaleko wokuFikelela kwiDatha) koku.

Ukukhutshwa kwePostgREST 9.0.0, izongezo zokuguqula i-database ibe yi-RESTful API

Phakathi kotshintsho kwinguqulelo entsha:

  • Iitheyibhile ezahluliweyo zongezwa kwi-cache ye-schema yokugcina, eyenza ukuba iitheyibhile ezinjalo zifake imisebenzi ye-UPSERT kunye ne-INSERT kwimpendulo yeNdawo, yenze imibuzo ye-OPTIONS, kwaye isebenzise inkxaso ye-OpenAPI.
  • Nge-RPC POST ivumelekile ukubiza imisebenzi ngeparamitha enye engachazwanga.
  • Ivumelekile ukubiza imisebenzi ngeparameter enye ye-JSON ngaphandle kwesihloko esithi “Okukhethayo: iiparams=into enye”.
  • Kuvunyelwe ukulayisha idatha yohlobo lwe-bytea kwimisebenzi usebenzisa izicelo kunye "Udidi lomxholo: isicelo / i-octet-stream".
  • Ivumelekile ukulayisha okubhaliweyo kwimisebenzi kusetyenziswa imibuzo ene-"Content- Type: text/plain".
  • Inkxaso eyongeziweyo yoonobumba abaqhweshayo ngaphakathi kwizibiyeli eziphindiweyo, umzekelo, "?col=in.("Kabini\"Quote"), ?col=in.("Back\\slash").
  • Ukukwazi ukuhluza izixhobo zomgangatho wokuqala ngokusekelwe kwizihluzi ezakhelwe ngaphakathi (“/projects?select=*,clients!inner(*)&clients.id=eq.12” zinikiwe.
  • Umsebenzisi "ngu" uvumela ixabiso "elingaziwa".
  • Ukuhambelana ne-PostgreSQL 14 kuye kwaphunyezwa kwaye inkxaso ye-PostgreSQL 9.5 iyekile.

umthombo: opennet.ru

Yongeza izimvo