PostgREST 9.0.0 рдЪреЗ рдкреНрд░рдХрд╛рд╢рди, рдбреЗрдЯрд╛рдмреЗрд╕рд▓рд╛ RESTful API рдордзреНрдпреЗ рдмрджрд▓рдгреНрдпрд╛рд╕рд╛рдареА рдЕреЕрдб-рдСрди

PostgREST 9.0.0 рд░рд┐рд▓реАрдЭ рдХрд░рдгреНрдпрд╛рдд рдЖрд▓рд╛, рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдПрд╕рдХреНрдпреВрдПрд▓ DBMS рд╡рд░ рд╣рд▓рдХреНрдпрд╛ рд╡рдЬрдирд╛рдЪреНрдпрд╛ рдЕреЕрдб-рдСрдирдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ рд╕реНрд╡рддрдВрддреНрд░рдкрдгреЗ рдХрд╛рд░реНрдпрд░рдд рд╡реЗрдм рд╕рд░реНрд╡реНрд╣рд░, рд╡рд┐рджреНрдпрдорд╛рди рдбреЗрдЯрд╛рдмреЗрд╕рдордзреАрд▓ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рдЪреЗ RESTful API рдордзреНрдпреЗ рднрд╛рд╖рд╛рдВрддрд░ рдХрд░рдд рдЖрд╣реЗ. рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ (ORMs) рдордзреНрдпреЗ рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛ рдореЕрдк рдХрд░рдгреНрдпрд╛рдРрд╡рдЬреА, PostgREST рдереЗрдЯ рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ рджреГрд╢реНрдпреЗ рддрдпрд╛рд░ рдХрд░рддреЗ. рдбреЗрдЯрд╛рдмреЗрд╕ рдмрд╛рдЬреВ JSON рдкреНрд░рддрд┐рд╕рд╛рджрд╛рдВрдЪреЗ рдХреНрд░рдорд┐рдХреАрдХрд░рдг, рдбреЗрдЯрд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЖрдгрд┐ рдЕрдзрд┐рдХреГрддрддрд╛ рджреЗрдЦреАрд▓ рд╣рд╛рддрд╛рд│рддреЗ. рдард░рд╛рд╡рд┐рдХ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдж 2000 рд╡рд┐рдирдВрддреНрдпрд╛рдВрдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рд┐рд╕реНрдЯрдо рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рдкреБрд░реЗрд╕реЗ рдЖрд╣реЗ. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб рд╣рд╛рд╕реНрдХреЗрд▓рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ MIT рдкрд░рд╡рд╛рдиреНрдпрд╛рдЕрдВрддрд░реНрдЧрдд рд╡рд┐рддрд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ.

рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдХреЗрд╡рд│ рдбреЗрдЯрд╛рдмреЗрд╕ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдпрдВрддреНрд░рдгрд╛ рд╡рд╛рдкрд░реВрди, рддреБрдореНрд╣реА HTTP рд╡рд░ рдбреЗрдЯрд╛ (рдЯреЗрдмрд▓, рджреГрд╢реНрдп рдкреНрд░рдХрд╛рд░ рдЖрдгрд┐ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛) рдкреНрд░рд╡реЗрд╢ рдордВрдЬреВрд░ рдХрд░реВ рд╢рдХрддрд╛. рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдЕрд╕реЗ рднрд╛рд╖рд╛рдВрддрд░ рдПрдиреНрдХреЛрдб рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА рдЖрдгрд┐ REST API рджреНрд╡рд╛рд░реЗ рдЯреЗрдмрд▓ рдЙрдкрд▓рдмреНрдз рдХрд░реВрди рджреЗрдгреНрдпрд╛рд╕рд╛рдареА рд╕рд╣рд╕рд╛ рдПрдХ GRANT рдЖрджреЗрд╢ рдкреБрд░реЗрд╕рд╛ рдЕрд╕рддреЛ. рдЯреЛрдХрди (JWT) рджреНрд╡рд╛рд░реЗ рдкреНрд░рд╡реЗрд╢ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреЗ рдЖрдгрд┐ рдбрд╛рдпрдиреЕрдорд┐рдХ рд░реЛ рд▓реЗрд╡реНрд╣рд▓ рд╕рд┐рдХреНрдпреБрд░рд┐рдЯреА (рд░реЛ рд▓реЗрд╡реНрд╣рд▓ рд╕рд┐рдХреНрдпреБрд░рд┐рдЯреА) рд╡рд╛рдкрд░реВрди "рдорд▓реНрдЯреАрдЯреЗрдирдиреНрд╕реА" рдЖрдпреЛрдЬрд┐рдд рдХрд░рдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ.

рд╡рд╛рд╕реНрддреБрд╢рд╛рд╕реНрддреНрд░реАрдпрджреГрд╖реНрдЯреНрдпрд╛, PostgREST рдбреЗрдЯрд╛-рдУрд░рд┐рдПрдВрдЯреЗрдб рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ (рдбреЗрдЯрд╛-рдУрд░рд┐рдПрдВрдЯреЗрдб рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░) рдХрдбреЗ рдврдХрд▓рддреЗ, рдЬрд┐рдереЗ рдорд╛рдпрдХреНрд░реЛрд╕рд░реНрд╡реНрд╣рд┐рд╕реЗрд╕ рд╕реНрд╡рддрдГ рд░рд╛рдЬреНрдпреЗ рд╡рд╛рдЪрд╡рдд рдирд╛рд╣реАрдд, рдкрд░рдВрддреБ рдпрд╛рд╕рд╛рдареА рдбреЗрдЯрд╛рдЪрд╛ рдПрдХрдЪ рдкреНрд░рд╡реЗрд╢ (рдбреЗрдЯрд╛ рдНрдХреНрд╕реЗрд╕ рд▓реЗрдпрд░) рд╡рд╛рдкрд░рддрд╛рдд.

PostgREST 9.0.0 рдЪреЗ рдкреНрд░рдХрд╛рд╢рди, рдбреЗрдЯрд╛рдмреЗрд╕рд▓рд╛ RESTful API рдордзреНрдпреЗ рдмрджрд▓рдгреНрдпрд╛рд╕рд╛рдареА рдЕреЕрдб-рдСрди

рдирд╡реАрди рдЖрд╡реГрддреНрддреАрдордзреАрд▓ рдмрджрд▓рд╛рдВрдкреИрдХреА:

  • рд╕реНрдЯреЛрд░реЗрдЬ рд╕реНрдХреАрдорд╛ рдХреЕрд╢реЗрдордзреНрдпреЗ рд╡рд┐рднрд╛рдЬрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЯреЗрдмрд▓реНрд╕ рдЬреЛрдбрд▓реНрдпрд╛ рдЧреЗрд▓реНрдпрд╛, рдЬреНрдпрд╛рдореБрд│реЗ рдЕрд╢рд╛ рдЯреЗрдмрд▓реНрд╕рдирд╛ рд╕реНрдерд╛рди рдкреНрд░рддрд┐рд╕рд╛рджрд╛рдордзреНрдпреЗ UPSERT рдЖрдгрд┐ INSERT рдСрдкрд░реЗрд╢рдиреНрд╕ рдПрдореНрдмреЗрдб рдХрд░рдгреЗ, OPTIONS рдХреНрд╡реЗрд░реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдгреЗ рдЖрдгрд┐ OpenAPI рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХрд░рдгреЗ рд╢рдХреНрдп рдЭрд╛рд▓реЗ.
  • RPC POST рджреНрд╡рд╛рд░реЗ рдПрдХрд╛ рдЕрдирд╛рдорд┐рдд рдкреЕрд░рд╛рдореАрдЯрд░рд╕рд╣ рдлрдВрдХреНрд╢рди рдХреЙрд▓ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ.
  • "рдкреНрд░рд╛рдзрд╛рдиреНрдп: рдкреЕрд░рд╛рдореНрд╕=рд╕рд┐рдВрдЧрд▓-рдСрдмреНрдЬреЗрдХреНрдЯ" рд╣реЗрдбрд░рд╢рд┐рд╡рд╛рдп рдПрдХрд╛ JSON рдкреЕрд░рд╛рдореАрдЯрд░рд╕рд╣ рдлрдВрдХреНрд╢рди рдХреЙрд▓ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ.
  • "рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░: рдНрдкреНрд▓рд┐рдХреЗрд╢рди/рдСрдХреНрдЯреЗрдЯ-рд╕реНрдЯреНрд░реАрдо" рд╕рд╣ рд╡рд┐рдирдВрддреНрдпрд╛ рд╡рд╛рдкрд░реВрди рдлрдВрдХреНрд╢рдиреНрд╕рдордзреНрдпреЗ рдмрд╛рдЗрдЯ рдкреНрд░рдХрд╛рд░рд╛рдЪрд╛ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ.
  • "рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░: рдордЬрдХреВрд░/рд╕рд╛рдзрд╛" рд╕рд╣ рдХреНрд╡реЗрд░реА рд╡рд╛рдкрд░реВрди рдлрдВрдХреНрд╢рдиреНрд╕рдордзреНрдпреЗ рдордЬрдХреВрд░ рд▓реЛрдб рдХрд░рдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рдЖрд╣реЗ.
  • рджреБрд╣реЗрд░реА рдХрдВрд╕рд╛рдд рд╡рд░реНрдг рд╕реБрдЯрдгреНрдпрд╛рд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, "?col=in.("Double\"quote"), ?col=in.("Back\\slash")".
  • рдЕрдВрдЧрднреВрдд рдлрд┐рд▓реНрдЯрд░ (тАЬ/projects?select=*,clients!inner(*)&clients.id=eq.12тАЭ рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдердо-рд╕реНрддрд░реАрдп рд╕рдВрд╕рд╛рдзрдиреЗ рдлрд┐рд▓реНрдЯрд░ рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ.
  • "рдЖрд╣реЗ" рдСрдкрд░реЗрдЯрд░ "рдЕрдЬреНрдЮрд╛рдд" рдореВрд▓реНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЛ.
  • PostgreSQL 14 рд╕рд╣ рд╕реБрд╕рдВрдЧрддрддрд╛ рдкреНрд░рд╛рдкреНрдд рдЭрд╛рд▓реА рдЖрд╣реЗ рдЖрдгрд┐ PostgreSQL 9.5 рд╕рд╛рдареА рд╕рдорд░реНрдерди рдмрдВрдж рдХреЗрд▓реЗ рдЖрд╣реЗ.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛