logo

REST API ievads

R reprezentatīvs S tate T ransfer (REST) ​​ir arhitektūras stils, kas nosaka ierobežojumu kopu, kas jāizmanto tīmekļa pakalpojumu izveidei. REST API ir veids, kā vienkāršā un elastīgā veidā bez apstrādes piekļūt tīmekļa pakalpojumiem.

REST API



REST tehnoloģijai parasti tiek dota priekšroka salīdzinājumā ar spēcīgāko vienkāršā objektu piekļuves protokola (SOAP) tehnoloģiju, jo REST izmanto mazāku joslas platumu, ir vienkārša un elastīga, padarot to piemērotāku interneta lietošanai. To izmanto, lai iegūtu vai sniegtu informāciju no tīmekļa pakalpojuma. Visa saziņa, kas tiek veikta, izmantojot REST API, izmanto tikai HTTP pieprasījumu.

Darbojas: Pieprasījums tiek nosūtīts no klienta uz serveri tīmekļa URL veidā kā HTTP GET vai POST vai PUT vai DELETE pieprasījums. Pēc tam no servera tiek saņemta atbilde resursa veidā, kas var būt jebkas, piemēram, HTML, XML, attēls vai JSON. Bet tagad JSON ir vispopulārākais formāts, ko izmanto tīmekļa pakalpojumos.

Veidojiet REST API meistarību Iemācieties integrēt populāras un praktiskas Python REST API Django tīmekļa lietojumprogrammās, izmantojot Educative interaktīvo prasmju ceļu Kļūstiet par Python balstītu API integratoru. Reģistrējieties vietnē Educative.io, izmantojot kodu GEEKS10 lai ietaupītu 10% no abonementa.



In HTTP ir piecas metodes, kuras parasti izmanto REST balstītajā arhitektūrā, t.i., POST, GET, PUT, PATCH un DELETE. Tie atbilst attiecīgi izveides, lasīšanas, atjaunināšanas un dzēšanas (vai CRUD) darbībām. Ir arī citas metodes, kuras tiek izmantotas retāk, piemēram, OPTIONS un HEAD.

  • GŪT: HTTP GET metode tiek izmantota, lai lasīt (vai izgūt) resursa attēlojumu. Drošajā ceļā GET atgriež attēlojumu XML vai JSON formātā un HTTP atbildes kodu 200 (OK). Kļūdas gadījumā tas visbiežāk atgriež 404 (NAV ATRAST) vai 400 (BAD REQUEST).
  • POSTĪT: POST darbības vārds visbiežāk tiek izmantots, lai izveidot jauni resursi. Jo īpaši to izmanto, lai izveidotu pakārtotos resursus. Tas ir, pakārtots kādam citam (piemēram, vecākajam) resursam. Pēc veiksmīgas izveides atgrieziet HTTP statusu 201, atgriežot galveni Atrašanās vieta ar saiti uz jaunizveidoto resursu ar HTTP statusu 201.

PIEZĪME: POST nav ne drošs, ne idempotens.



  • PUT: To lieto, lai atjaunināšana spējas. Tomēr PUT var arī izmantot izveidot resurss gadījumā, ja resursa ID izvēlas klients, nevis serveris. Citiem vārdiem sakot, ja PUT ir URI, kas satur neesoša resursa ID vērtību. Veiksmīgas atjaunināšanas gadījumā no PUT atgrieziet 200 (vai 204, ja neatgriežat saturu pamattekstā). Ja izveidei izmantojat PUT, veiksmīgas izveides gadījumā atgrieziet HTTP statusu 201. PUT nav droša darbība, bet tā ir idempotena.
  • PLĀKSTS: Tā ir pieradusi modificēt iespējas. PATCH pieprasījumā ir jāietver tikai resursa izmaiņas, nevis viss resurss. Tas atgādina PUT, bet pamattekstā ir instrukciju kopa, kas apraksta, kā jāmaina resurss, kas pašlaik atrodas serverī, lai izveidotu jaunu versiju. Tas nozīmē, ka PATCH pamattekstam jābūt ne tikai pārveidotai resursa daļai, bet arī kaut kādā ielāpu valodā, piemēram, JSON ielāps vai XML ielāps. PATCH nav ne drošs, ne idempotents.
  • DZĒST: Tā ir pieradusi dzēst resurss, kas identificēts ar URI. Veiksmīgas dzēšanas gadījumā atgrieziet HTTP statusu 200 (OK) kopā ar atbildes pamattekstu.

Idempotence: Idempotenta HTTP metode ir HTTP metode, kuru var izsaukt daudzas reizes bez dažādiem rezultātiem. Nav svarīgi, vai metode tiek izsaukta tikai vienu reizi vai desmit reizes. Rezultātam jābūt tādam pašam. Atkal, tas attiecas tikai uz rezultātu, nevis pašu resursu.

Piemērs:

C

cipari alfabētā




1. a = 4>// It is Idempotence, as final value(a = 4)> >// would not change after executing it multiple> >// times.> 2. a++>// It is not Idempotence because the final value> >// will depend upon the number of times the> >// statement is executed.>

>

>

Pieprasījums un atbilde

Tagad mēs redzēsim, kā pieprasījums un atbilde darbojas dažādiem HTTP metodes. Pieņemsim, ka mums ir API( https://www.techcodeview.com ) visiem studentiem dati par gfg.

  • GŪT: Pieprasījums visiem studentiem.
Pieprasīt
GET:/api/students
  • POSTĪT: Pieprasījums publicēt/izveidot/ievietot datus

Pieprasīt

POST:/api/studenti

{name:Raj}

  • PUT vai PATCH: Datu atjaunināšanas pieprasījums ar id=1

Pieprasīt

PUT vai PATCH:/api/students/1

{name:Raj}

  • DZĒST: Pieprasījums dzēst datus ar id=1
Pieprasīt
DZĒST:/api/students/1

RESTful tīmekļa pakalpojumi ir ļoti populāri, jo tiem ir mazs svars, tie ir ļoti mērogojami un apkopjami, un tos ļoti bieži izmanto, lai izveidotu API tīmekļa lietojumprogrammām.