Tukunga o PostgREST 9.0.0, he taapiri mo te huri i te papaunga raraunga hei API RESTful

Ko te tukunga o te PostgREST 9.0.0 i puta, he tūmau tukutuku mahi motuhake me te whakatinanatanga o te taapiri ngawari ki te PostgreSQL DBMS, he whakamaori i nga mea mai i te putunga raraunga kua noho ki roto i te RESTful API. Engari ki te mapi i nga raraunga hononga ki roto i nga taonga (ORM), ka hangaia e PostgREST nga tirohanga ki roto i te paataka raraunga. Ko te taha o te papanga raraunga ka whakahaere i te raupapatanga o nga whakautu JSON, te whakamana raraunga, me te whakamanatanga. He rawaka te mahinga o te punaha ki te tukatuka ake ki te 2000 tono mo ia hekona i runga i te tūmau angamaheni. Kua tuhia te waehere kaupapa ki Haskell ka tohatohahia i raro i te raihana MIT.

Hei tauira, ma te whakamahi noa i te tikanga mo te paatengi raraunga, ka taea e koe te tuku uru ki nga raraunga (tepu, momo tirohanga, me nga tikanga rongoa) ma runga HTTP. I tenei take, kaore he take ki te whakawaehere i te whakamaoritanga penei me te nuinga o te waa kotahi te tono GRANT e ranea ana kia waatea te ripanga ma te REST API. Ka taea te whirihora i te uru ma te tohu (JWT) me te whakarite i te "maha" ma te whakamahi i te haumarutanga taumata haupae hihiri (Row Level Security).

Ma te hoahoanga, ka pana a PostgREST ki te hoahoanga-raraunga (Raraunga-Hangai Hangahanga), kaore e tiakina e nga ratonga moroiti nga whenua ake, engari ka whakamahi i te urunga kotahi ki te raraunga (Apa Uru Raraunga) mo tenei.

Tukunga o PostgREST 9.0.0, he taapiri mo te huri i te papaunga raraunga hei API RESTful

I roto i nga huringa o te putanga hou:

  • I taapirihia nga ripanga wehewehe ki te keteroki aronuinga rokiroki, i taea ai e enei ripanga te whakauru i nga mahi UPSERT me te INSERT ki te urupare Wāhi, ka mahia nga patai KŌWHIRINGA, ka whakatinana i te tautoko OpenAPI.
  • Ma te RPC POST ka taea te karanga i nga mahi me tetahi tawhā kore ingoa.
  • Ka whakaaetia ki te karanga i nga mahi me te tawhā JSON kotahi me te kore te pane "Whakaarohia: params = kaupapa-kotahi".
  • Ka whakaaetia kia utaina nga raraunga o te momo bytea ki roto i nga mahi ma te whakamahi i nga patai me te "Momo-Ihirangi: tono/octet-stream".
  • Ka whakaaetia ki te uta kuputuhi ki roto i nga mahi ma te whakamahi i nga patai me "Momo-Ihirangi: kuputuhi/mania".
  • He tautoko taapiri mo te mawhiti i nga kiripuaki i roto i nga taiapa rua, hei tauira, "?col=in.("Paarua\"Quote"), ?col=in.("Hoki \\ rītaha"".
  • Ko te kaha ki te tarai i nga rauemi taumata tuatahi i runga i nga whiriwhiringa kua hangaia ("/projects?select=*,clients!inner(*)&clients.id=eq.12" kua whakaratohia.
  • Ka taea e te kaiwhakahaere "ko" te uara "kaore e mohiotia".
  • Kua tutuki te hototahi ki te PostgreSQL 14 me te tautoko mo te PostgreSQL 9.5 kua whakamutua.

Source: opennet.ru

Tāpiri i te kōrero