Vadovai

Kas yra API? Paprastas vadovas programų kūrėjams

API (application programming interface) – tai apibrėžtas būdas, kuriuo viena programinės įrangos dalis prašo kitos duomenų arba paveda jai ką nors padaryti. Jūsų programa siunčia užklausą sutartu formatu – „duok rytojaus rezervacijas“, „nuskaityk 20 € nuo šios kortelės“, „apibendrink šį tekstą“ – o kita sistema grąžina struktūrizuotą atsakymą. API yra tai, kaip programos dalys tarpusavyje bendrauja ir kaip jūsų programa naudoja išorines paslaugas, pavyzdžiui, mokėjimus, el. paštą, žemėlapius ir DI.

Kodėl API svarbūs kuriant su DI

Beveik kiekviena naudinga programa sudaryta iš dalių, kurios bendrauja per API:

  • Jūsų programos viduje naršyklės ekranai kviečia jūsų backend API, kad įkeltų ir išsaugotų duomenis.
  • Už jūsų programos ribų jūsų backend kviečia kitų įmonių API: Stripe mokėjimams, el. pašto teikėjas kvitams siųsti, DI modelio teikėjas tekstui generuoti.

Kai prašote DI kūrėjo „priimti mokėjimus“ ar „pridėti DI santrauką“, jis iš tikrųjų rašo kodą, kuris kviečia API. Žinojimas pagrindų padeda suprasti, ko DI iš jūsų reikia (paprastai paskyros toje paslaugoje ir API rakto), kur gali nutikti klaidų ir kiek tai kainuos.

Kasdienė analogija

Pagalvokite apie restoraną. Jūs neinate į virtuvę gaminti. Perskaitote meniu, pasakote padavėjui, ko norite, tokiu būdu, kurį virtuvė supranta, ir padavėjas atneša jūsų maistą – arba praneša, kad patiekalas baigėsi.

  • Meniu yra API dokumentacija: sąrašas, ko galite paprašyti ir kaip.
  • Padavėjas yra API: vienintelis sutartas būdas, kuriuo užklausos įeina ir atsakymai išeina.
  • Virtuvė yra kita sistema: jums nereikia žinoti, kaip ji veikia viduje.
  • Jūsų užsakymas yra užklausa; lėkštė – atsakymas.

Virtuvė gali keisti krosnis ir personalą, nepaveikdama jūsų, jei meniu nesikeičia. Tai tikroji API vertė: ji leidžia dviem sistemoms dirbti kartu, nei vienai nereikia žinoti, kaip kita sukurta.

Kaip veikia žiniatinklio API užklausa

Dauguma API, su kuriais susidursite, yra žiniatinklio API, veikiantys per HTTP – tą patį protokolą, kurį naudoja jūsų naršyklė. Kiekviena užklausa turi kelias dalis:

DalisKas taiPavyzdys
MetodasVeiksmo tipasGET (skaityti), POST (kurti)
URL / galutinis taškasAdresas to, ką keičiatehttps://api.example.com/bookings
AntraštėsPapildoma informacija, įskaitant tai, kas jūs esateAuthorization: Bearer <jūsų raktas>
TurinysDuomenys, kuriuos siunčiate kuriant ar atnaujinant{"name": "Lena", "time": "14:00"}

Ir kiekvienas atsakymas turi:

DalisKas taiPavyzdys
Statuso kodasSkaičius, nurodantis, kaip sekėsi200 OK, 201 Created, 404 Not Found
TurinysGrąžinami duomenys, paprastai JSON{"id": 5001, "status": "confirmed"}

JSON (JavaScript Object Notation) yra paprastas tekstinis formatas su pavadinimais ir reikšmėmis figūriniuose skliaustuose. Tai standartinis būdas, kuriuo žiniatinklio API keičiasi duomenimis.

REST: dažniausias stilius

REST – tai plačiai naudojama žiniatinklio API projektavimo konvencija. Kiekvienas daiktų tipas turi savo URL, o standartiniai metodai nurodo, ką su juo darote. Štai kaip galėtų atrodyti rezervacijų programos REST API:

MetodasGalutinis taškasKą daro
GET/api/bookingsIšvardija rezervacijas
GET/api/bookings/5001Gauna vieną rezervaciją
POST/api/bookingsSukuria naują rezervaciją
PATCH/api/bookings/5001Pakeičia dalį rezervacijos, pavyzdžiui, laiką
DELETE/api/bookings/5001Atšaukia (ištrina) rezervaciją

PUT taip pat egzistuoja ir pagal konvenciją pakeičia visą įrašą, o PATCH keičia tik jūsų nurodytus laukus.

Dažniausiai matomi statuso kodai:

KodasReikšmė
200 / 201Sėkmė / sukurta
400Blogai užklausa – kažkas jūsų siųstame turinyje buvo neteisinga arba trūko
401Neautentifikuota – nėra galiojančio prisijungimo ar rakto
403Draudžiama – jūs žinomas, bet neturite teisės tai daryti
404Nerasta
429Per daug užklausų – viršijote greičio ribą
500Serveryje įvyko klaida

Kai jūsų programa sugenda, statuso kodas dažnai yra greičiausia užuomina. 401 iš mokėjimo teikėjo paprastai reiškia trūkstamą ar neteisingą API raktą; 429 reiškia, kad kviečiate per dažnai.

REST nėra vienintelis stilius – egzistuoja ir GraphQL bei RPC stiliaus API – bet REST naudoja dauguma paslaugų ir DI sukurtų backend.

Pavyzdys: rezervacijos patvirtinimas

Kai klientas užsisako kirpimą grožio salono programoje, per vieną ar dvi sekundes gali įvykti keletas API kvietimų:

  1. Naršyklės rezervacijos puslapis siunčia POST /api/bookings su paslauga, laiku ir kliento duomenimis į jūsų backend.
  2. Jūsų backend patikrina, ar laikas laisvas, išsaugo rezervaciją duomenų bazėje ir grąžina 201 Created.
  3. Jūsų backend iškviečia el. pašto teikėjo API su savo paslaptiniu raktu: „išsiųsk šį patvirtinimą adresu lena@example.com“.
  4. Jei yra užstatas, jūsų backend paprašo mokėjimo teikėjo API sukurti apmokėjimo sesiją ir nukreipia klientą ten.
  5. Vėliau mokėjimo teikėjas kviečia jūsų programą pranešti, kad mokėjimas sėkmingas. Tas atvirkštinis kvietimas yra webhook.

Pirmieji du žingsniai yra jūsų pačių API tarp frontend ir backend. 3–5 žingsniai yra trečiųjų šalių API.

Pagrindiniai terminai paaiškinti

TerminasReikšmė
Galutinis taškas (endpoint)Vienas konkretus URL, į kurį API atsako.
API raktasSlaptas tekstas, identifikuojantis jūsų programą paslaugai. Elkitės su juo kaip su slaptažodžiu.
AutentifikavimasĮrodymas, kas kviečia – raktu, žetonu ar prisijungimu. Žr. kas yra autentifikavimas.
Greičio riba (rate limit)Maksimalus užklausų skaičius per laikotarpį.
SDKParuošta kodo biblioteka, kuri palengvina konkrečios API iškvietimą.
Dokumentacija„Meniu“: kokie galutiniai taškai egzistuoja, ką jie priima ir grąžina.
Smėlio dėžė / testinis režimasPaslaugos versija testavimui be tikrų pinigų ar tikrų duomenų.
WebhookKitos paslaugos iškvietimas į jūsų programą, kai kas nors įvyksta.

Dažnos klaidos ir mitai

  • Slaptų raktų įdėjimas į frontend. Viskas kode, kuris veikia naršyklėje, matoma kiekvienam, kas apsilanko svetainėje. Slaptus raktus privalo laikyti serveryje, aplinkos kintamuosiuose ar paslaptyse.
  • Raktų įklijavimas į pokalbį. Pokalbio istorija gali būti saugoma. Naudokite savo įrankio paslapčių funkciją ir pakeiskite bet kurį atskleistą raktą.
  • Prielaida, kad API nemokamas. Daugelis API apmokestina pagal užklausą ar naudojimo vienetą – DI modelių API skaičiuoja pagal žetonus. Patikrinkite kainas ir nustatykite išlaidų ribas. Žr. kaip naudoti LLM API.
  • Gedimų netvarkymas. Išorinės paslaugos sugenda, nebaigia darbo laiku ir pasiekia ribas. Prašykite protingų klaidų pranešimų ir pakartojimų.
  • Pasitikėjimas naršykle. Jūsų pačių API turi pats tikrinti leidimus. Mygtuko paslėpimas nesustabdo to, kas tiesiogiai kviečia galutinį tašką.
  • Tiesioginių raktų naudojimas testuojant. Naudokite testinio režimo raktus, kol būsite pasiruošę paleisti.

Ką paprašyti DI kūrėjo

  • „Kurias išorines API naudoja ši programa ir kiek kainuoja kiekviena?“
  • „Kviesk mokėjimo API tik iš serverio. Nuskaityk raktą iš aplinkos kintamojo.“
  • „Išvardink kiekvieną mūsų API galutinį tašką, ką jis daro ir kas gali jį kviesti.“
  • „Serveryje patikrink, ar prisijungęs vartotojas yra rezervacijos savininkas prieš ją atnaujinant ar trinant.“
  • „Jei el. pašto API sugenda, vis tiek išsaugok rezervaciją ir įrašyk klaidą į žurnalą.“
  • „Kol kas naudok teikėjo testinį režimą.“

API Mythex platformoje

Mythex gali sukurti jūsų pačių API – kaip žiniatinklio programos dalį arba kaip atskirą backend Node, Python (FastAPI), C# ar Java, veikiantį kartu su jūsų frontend – ir parašyti kodą, kuris kviečia išorines paslaugas. Raktus pridedate kaip projekto paslaptis, o ne pokalbyje, ir jie pasiekiami jūsų programai peržiūroje bei paskelbus. Dokumentacijoje yra receptai integruoti bet kurį API ir sukurti REST API backend.

Klausimai

Kas yra API paprastais žodžiais?

API (application programming interface) – tai apibrėžtas būdas, kuriuo viena programinės įrangos dalis prašo kitos duomenų ar paveda jai ką nors padaryti. Jūsų programa siunčia užklausą sutartu formatu, o kita sistema grąžina atsakymą – pavyzdžiui, orų duomenis, mokėjimo rezultatą ar DI sugeneruotą atsakymą.

Kas yra REST API?

REST API – tai dažnas žiniatinklio API stilius, kai kiekvienas daiktų tipas (rezervacijos, klientai) turi URL, o veiksmams naudojami standartiniai HTTP metodai: GET skaitymui, POST kūrimui, PUT arba PATCH atnaujinimui, DELETE šalinimui. Duomenys paprastai grąžinami JSON formatu.

Kas yra API raktas ir kur jį laikyti?

API raktas – tai slaptas tekstas, kuris identifikuoja jūsų programą paslaugai ir dažnai leidžia išleisti pinigus ar pasiekti duomenis. Laikykite jį aplinkos kintamuosiuose arba projekto paslapčiose serveryje, niekada kode, kuris veikia naršyklėje, ir niekada viešoje saugykloje.

Koks skirtumas tarp API ir webhook?

Su API jūsų programa paprašo kitos paslaugos, kai jai ko nors reikia. Su webhook kita paslauga iškviečia jūsų programą, kai įvyksta kas nors – pavyzdžiui, mokėjimo teikėjas praneša, kad mokėjimas sėkmingas.

Mythex · Pricing · Kurkite bet ką su dirbtiniu intelektu · Svetainių ir programėlių šablonai · Mythex palyginimas · Programėlių kūrimo su dirbtiniu intelektu žodynėlis · Nemokami programėlių kūrimo su dirbtiniu intelektu įrankiai · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)