Fa'asa'olotoina o le PostgREST 9.0.0, fa'aopoopo mo le fa'aliliuina o le fa'amaumauga i se API FESOASOANI.

O le tuʻuina atu o le PostgREST 9.0.0 na faia, o se 'upega tafaʻilagi faʻaogaina faʻatasi ma le faʻatinoina o se faʻaopoopoga mama i le PostgreSQL DBMS, faʻaliliu mea mai se faʻamaumauga o loʻo i ai i totonu o se API RESTful. Nai lo le fa'avasegaina o fa'amatalaga feso'ota'iga i mea faitino (ORMs), e fa'atupu sa'o e PostgREST fa'amatalaga i totonu o fa'amaumauga. O le itu fa'amaumauga o lo'o fa'atautaia fo'i le fa'asologa o tali a le JSON, fa'amaoniga fa'amaumauga, ma le fa'atagaina. O le faʻatinoga o le faiga e lava lea e faʻagasolo ai i luga ole 2000 talosaga ile sekone ile server masani. O le faʻailoga o le poloketi o loʻo tusia i Haskell ma tufatufaina i lalo ole laisene MIT.

Mo se faʻataʻitaʻiga, faʻaaogaina naʻo le faʻaogaina o faʻamaumauga faʻapitoa, e mafai ona e tuʻuina atu le avanoa i faʻamaumauga ( laulau, vaʻaiga ituaiga, ma faʻasologa o mea teu) i luga o HTTP. I lenei tulaga, e leai se mea e manaʻomia e faʻapipiʻi ai sea faʻaliliuga ma e masani lava e tasi le GRANT poloaiga e lava e faʻaavanoaina ai le laulau e ala i le REST API. E mafai ona faʻapipiʻi avanoa e ala i le faʻailoga (JWT) ma faʻapipiʻi le "multitenancy" e ala i le faʻaogaina o le faʻaogaina o le saogalemu o laina laina (Row Level Security).

Fa'ata'ita'iga, PostgREST fa'aoso aga'i atu i se fa'ata'ita'iga fa'amaumauga (Data-Oriented Architecture), lea e le fa'asaoina ai e le microservices i latou lava, ae fa'aaoga se avanoa e tasi i fa'amaumauga (Data Access Layer) mo lenei.

Fa'asa'olotoina o le PostgREST 9.0.0, fa'aopoopo mo le fa'aliliuina o le fa'amaumauga i se API FESOASOANI.

Faatasi ai ma suiga i le lomiga fou:

  • O laulau vaelua na fa'aopoopoina i le fa'aputuga o fa'amaumauga, lea na mafai ai e ia laulau ona fa'apipi'i le UPSERT ma le INSERT fa'agaioiga i le tali nofoaga, fa'atino OPTIONS fesili, ma fa'atino le lagolago OpenAPI.
  • E ala i le RPC POST e faʻatagaina e valaʻau galuega faʻatasi ma se tasi e le taʻua igoa.
  • E fa'atagaina e vala'au galuega fa'atasi ma le tasi JSON parakalafa e aunoa ma le "Prefer: params = single-object" ulutala.
  • E fa'atagaina le utaina o fa'amatalaga o le ituaiga bytea i galuega e fa'aaoga ai fesili ma le "Ituaiga-Ituaiga: talosaga/octet-stream".
  • Fa'ataga le utaina o tusitusiga i galuega e fa'aaoga ai fesili ma le "Ituaiga-Igoa: tusitusiga/malamalama".
  • Fa'aopoopo le lagolago mo le sola ese o mataitusi i totonu o puipui fa'alua, mo se fa'ata'ita'iga, "?col=in.("Double\"Quote"), ?col=in.("Back\\slash").
  • O le mafai ona fa'amama punaoa tulaga muamua e fa'avae i luga o filiga ua fausia ("/projects?select=*,clients!inner(*)&clients.id=eq.12" ua saunia.
  • O le "is" operator e faʻatagaina le tau "le iloa".
  • Le fetaui lelei ma le PostgreSQL 14 ua ausia ma le lagolago mo PostgreSQL 9.5 ua taofia.

puna: opennet.ru

Faaopoopo i ai se faamatalaga