PostgREST 9.0.0 рдХреЛ рд░рд┐рд▓реАрдЬ, рдбрд╛рдЯрд╛рдмреЗрд╕рд▓рд╛рдИ RESTful API рдорд╛ рдкрд░рд┐рдгрдд рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдПрдбрдЕрдирд╣рд░реВ

PostgREST 9.0.0 рдЬрд╛рд░реА рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ, PostgreSQL DBMS рдорд╛ рд╣рд▓реНрдХрд╛ рдПрдб-рдЕрдирдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд╕рд╛рде рдЫреБрдЯреНрдЯреИ рдЕрдкрд░реЗрдЯрд┐рдЩ рд╡реЗрдм рд╕рд░реНрднрд░, рдЕрд╡рд╕реНрдерд┐рдд рдбрд╛рдЯрд╛рдмреЗрд╕рдмрд╛рдЯ рд╡рд╕реНрддреБрд╣рд░реВрд▓рд╛рдИ RESTful API рдорд╛ рдЕрдиреБрд╡рд╛рдж рдЧрд░реНрджреИред рд╡рд╕реНрддреБрд╣рд░реВ (ORMs) рдорд╛ рд░рд┐рд▓реЗрд╢рдирд▓ рдбрд╛рдЯрд╛ рдореНрдпрд╛рдк рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛, PostgREST рд▓реЗ рдбрд╛рдЯрд╛рдмреЗрд╕рдорд╛ рд╕реАрдзрд╛ рджреГрд╢реНрдпрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджрдЫред рдбрд╛рдЯрд╛рдмреЗрд╕ рдкрдХреНрд╖рд▓реЗ JSON рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╣рд░реВ, рдбрд╛рдЯрд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг, рд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдгрдХреЛ рдХреНрд░рдордмрджреНрдзрддрд╛ рдкрдирд┐ рд╣реНрдпрд╛рдиреНрдбрд▓ рдЧрд░реНрджрдЫред рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рджрд░реНрд╢рди рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд░реНрднрд░рдорд╛ рдкреНрд░рддрд┐ рд╕реЗрдХреЗрдиреНрдб 2000 рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЧрд░реНрди рдкрд░реНрдпрд╛рдкреНрдд рдЫред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛрдб Haskell рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдЫ рд░ MIT рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрдд рд╡рд┐рддрд░рд┐рддред

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

рд╡рд╛рд╕реНрддреБрд╢рд╛рд╕реНрддреНрд░реАрдп рд░реВрдкрдорд╛, PostgREST рд▓реЗ рдбрд╛рдЯрд╛-рдЙрдиреНрдореБрдЦ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ (рдбреЗрдЯрд╛-рдЙрдиреНрдореБрдЦ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░) рддрд┐рд░ рдзрдХреЗрд▓реНрдЫ, рдЬрд╣рд╛рдБ рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрднрд┐рд╕реЗрд╕рд╣рд░реВрд▓реЗ рд░рд╛рдЬреНрдпрд╣рд░реВрд▓рд╛рдИ рдмрдЪрдд рдЧрд░реНрджреИрди, рддрд░ рдпрд╕рдХрд╛ рд▓рд╛рдЧрд┐ рдбрд╛рдЯрд╛рдорд╛ рдПрдХрд▓ рдкрд╣реБрдБрдЪ (рдбреЗрдЯрд╛ рдкрд╣реБрдБрдЪ рддрд╣) рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫред

PostgREST 9.0.0 рдХреЛ рд░рд┐рд▓реАрдЬ, рдбрд╛рдЯрд╛рдмреЗрд╕рд▓рд╛рдИ RESTful API рдорд╛ рдкрд░рд┐рдгрдд рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдПрдбрдЕрдирд╣рд░реВ

рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдгрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдордзреНрдпреЗ:

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

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди