GirlsGoIT Wiki (ro)
RU
  • Introducere
  • Unelte
    • Slack
    • Visual Studio Code
    • CodeSandbox
      • Cum rezolvi un task la proiect
      • Cum rezolvi un exercițiu
    • GitHub
  • FRONTEND STATIC
    • Internet
    • HTML
    • CSS
    • Exerciții
      • Erontend Static Exercitii
  • FRONTEND DINAMIC
    • JavaScript
      • Introducere
      • Consola Browser'ului
      • Variabile
      • Tipuri de date
      • Operatori
      • JavaScript & HTML
      • Funcții
      • DOM & Window API
      • Math API
      • Condiționale (if)
      • Cicluri (for & while)
    • Vue.js
      • Componente Vue
      • Componente & Forme
      • Lifecycle hooks
      • Comunicare între componente
      • Vue Router
      • Axios
      • Instalare locală
    • Exercitii
    • Rest API
      • Rest api GET
      • Rest api GET one
      • Rest api POST
      • Rest api PUT
      • Rest api DELETE
  • PYTHON
    • Introducere
    • Variabile
    • Tipuri de Date
    • Operatori
    • Control Flow
    • Liste
    • Cicluri for
    • Funcții
    • Dictionare
    • Seturi
    • Fișiere
    • Try-except-finally. Lambda
    • Librării, module
    • Exercitii
      • Variabile
      • TIpuri de Date
      • Operatori
      • If...else
      • Liste
      • Cicluri for
      • Funcții
      • Dicționare
      • Seturi
      • Fișiere
      • Try-except, Lambda
      • Librării , module
      • ✨Mai multe exerciții ✨
    • Python Archiva
  • BACKEND
    • Instalare Python
    • Python OOP
    • Baze de date
    • Django
    • REST API's
    • Django REST Framework
    • Exerciții
      • Python OOP
      • Django
      • Django Rest Framework
  • Data Science
    • Introducere în Data Science
    • Vizualizarea datelor
      • Matplotlib
    • Numpy
    • Pandas
    • DecisionTrees
  • 3D Printing
    • Intro
    • Fusion 360 Intro
    • Sketch
    • Solid body
    • Arduino
    • Final Projects
  • ARHIVA
    • Milligram
    • Drone
      • Intro
    • Old Backend
      • Bootstrap
      • Hello Flask
      • DB Modeling
      • Ubuntu Quest
      • Baze de date
      • Heroku Deploy
    • Robotica NAO
      • Finalizarea proiectelor
      • Flow Control
      • Cum creez un Dialog box
      • Convenția GirlsGoIT Robotics Choregraphe
      • Tracker
      • Dialog - QiChat
    • Robotica
      • 1.1 mBlock
      • 1.2 Descărcarea, instalarea și conectarea
      • 1.3 Execută un program de pe mBlock IDE sau încarcă pe Board
      • 1.4 Conectarea prin USB, Bluetooth sau 2.4GHz
      • 2.1 Programe Simple
      • 2.2 Senzori
      • 2.3 Exerciții avansate - Scratch
      • 3.0.1 Instalare Arduino IDE
      • 3.0.2 Instalare Arduino IDE WEB
      • 3.1 Configurare Arduino IDE
      • 3.2 Introducere în limbajul C
      • 3.3 Exemple Arduino - mBot
      • 3.4 Line follow - Arduino
      • 3.5 Ultimate robot
      • 4.1 Planificarea și managementul proiectelor
      • Custom robot
      • Noțiuni și explicații
      • Delay fara sa opreasca programul
      • Alte resurse și exemple
Powered by GitBook
On this page
  • API - Application Programming Interface
  • REST - Representational State Transfer
  • RESTful API
  • HTTP - Hypertext Transfer Protocol
  • Cum funcționează HTTP
  • Metodele HTTP
  • Codurile de răspuns HTTP
  • Resurse
  1. BACKEND

REST API's

PreviousDjangoNextDjango REST Framework

Last updated 3 years ago

API - Application Programming Interface

Termenul de API este acronimul de la Application Programing Interface care in limba română se poate traduce ca interfață de programare a aplicațiilor și reprezintș un set de reguli și specificații cu ajutorul cărora un program poate accesa și folosi resursele oferite de un alt program. Cu alte cuvinte, un program care oferă API-uri permite altor programe să interacționeze cu acesta automat, de la program la program sau de la program la sistem de operare, fără să fie nevoie de folosirea unei interfețe grafice de utilizare (GUI) și fără cunoștințe legate de arhitectura sau elemente de programare ale programului ci doar folosirea specificațiilor de utilizare a API-ului oferit.

REST - Representational State Transfer

REST este un stil de arhitectură pentru sistemele informatice aflate într-o rețea.

RESTful API

Un API REST (cunoscută și sub numele de RESTful API) este o interfață de programare a aplicației (API sau API web) care se conformează constrângerilor stilului arhitectural REST și permite interacțiunea cu serviciile web RESTful. REST reprezintă transferul reprezentativ al statului și a fost creat de informaticianul Roy Fielding.

Atunci când se executa o cerere de client printr-un API RESTful, acesta transferă o reprezentare a stării resursei către solicitant sau punct final. Aceste informații sau reprezentări sunt livrate într-unul din mai multe formate prin HTTP: JSON (Javascript Object Notation), HTML, sau text simplu. JSON este formatul de fișier cel mai popular în general, deoarece, în ciuda numelui său, este limbaj-agnostic, precum și lizibil atât de oameni, cât și de mașini.

Altceva de reținut: anteturile(headers) și parametrii sunt, de asemenea, importanți în metodele HTTP ale unei cereri HTTP RESTful API, deoarece conțin informații importante de identificare referitoare la metadatele cererii, autorizarea, identificatorul uniform al resurselor (URI), cache, cookie-uri și altele. Există anteturi de solicitare și anteturi de răspuns, fiecare cu propriile informații de conexiune HTTP și coduri de stare.Pentru ca un API să fie considerat RESTful, acesta trebuie să respecte aceste criterii:

Pentru ca un API să fie considerat RESTful, acesta trebuie să respecte aceste criterii:

  • O arhitectură client-server formată din clienți, servere și resurse, cu cereri gestionate prin HTTP.

  • Comunicare client-server fără păstrarea stării, ceea ce înseamnă că nu sunt stocate informații despre client între solicitări de obținere și fiecare cerere este separată și neconectată.

HTTP - Hypertext Transfer Protocol

Hypertext Transfer Protocol este metoda cea mai des utilizată pentru accesarea informațiilor în Internet care sunt păstrate pe servere World Wide Web. Protocolul HTTP este un protocol de tip text, fiind protocolul "implicit" al WWW. Adică, dacă un URL nu conține partea de protocol, aceasta se consideră ca fiind http. HTTP presupune că pe calculatorul destinație rulează un program care înțelege protocolul. Fișierul trimis la destinație poate fi un document HTML, un fișier grafic, de sunet, animație sau video, de asemenea un program executabil pe server-ul respectiv sau și un editor de text.

Cum funcționează HTTP

Metodele HTTP

Metodele HTTP furnizează operațiile, cum ar fi crearea citirea, actualizarea și ștergerea unei resurse din baza de date. În tabelul de mai jos găsiți cele mai utilizate metode folosite:

Metodă HTTP

Descrierea

Status code

GET

Extrage o resursă.

200

POST

Creează o nouă resursă.

200, 201

PUT

Actualizează o resursă existentă.

200, 201

DELETE

Șterge o resursă.

200, 204

Codurile de răspuns HTTP

Codurile de stare a răspunsului HTTP indică dacă o anumită solicitare HTTP a fost finalizată cu succes. Răspunsurile sunt grupate în cinci clase:

Resurse

HTTP oferă o tehnică de comunicare prin care paginile web se pot transmite de la un computer aflat la distanță spre propriul computer. Dacă se apelează un link sau o adresă de web cum ar fi , atunci se cere calculatorului host să afișeze o pagină web (index.html sau altele). În prima fază, adresa www.girlsgoit.org este convertit de protocolul DNS într-o adresă IP. Urmează transferul prin protocolul TCP pe portul standard 80 al serverului HTTP, ca răspuns la cererea HTTP-GET. Informații suplimentare ca de ex. indicații pentru browser, limba dorită ș.a. se pot adăuga în header-ul pachetului HTTP. În urma cererii HTTP-GET urmează din partea serverului răspunsul cu datele cerute, ca de ex.: pagini în HTML, cu fișiere atașate ca imagini, fișiere de stil (CSS), scripturi (JavaScript), dar pot fi și pagini generate dinamic. Dacă dintr-un anumit motiv informațiile nu pot fi transmise, atunci serverul trimite înapoi un mesaj de eroare. Modul exact de desfășurare a acestei acțiuni (cerere și răspuns) este stabilit în specificațiile HTTP.

Pentru o listă mai detaliată a metodelor disponibile puteți accesa acest .

1xx -

2xx -

3xx -

4xx -

5xx -

Codurile de stare sunt definite în secțiunea . Adițional, pentru o descriere mai detaliată, puteți accesa următorul .

http://girlsgoit.org/
link
răspunsuri informaționale
răspunsuri reușite
redirecționări
erori de client
erori de server
10 din RFC 2616
link
What is a REST API?