Interfață Gateway Server Web

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Server Gateway Interface Web (WSGI) este un protocol de transmisie care stabilește și descrie comunicarea și interacțiunile între servere și web aplicații scrise în Python limba . [1] Prin urmare, este interfața standard a serviciului web pentru programarea în Python. [2]

Pur și simplu, protocolul specifică modul în care serverele gestionează solicitările de la browsere / clienți și redirecționează informațiile solicitate către aplicațiile lor, precum și modul de utilizare a informațiilor pe care le-au preluat și cum să răspundă. [3] [4]

Istorie și dezvoltare

Din punct de vedere istoric, aplicațiile web scrise în Python au fost problematice pentru noii utilizatori care au abordat acest limbaj, deoarece alegerea structurii de utilizat în contextul web a limitat-o ​​în consecință pe cea de pe serverele web utilizabile și invers. Programele Python au fost deseori concepute pentru CGI , FastCGI , mod python sau chiar interfețe API specifice serverului web.

WSGI a fost creat ca o interfață de nivel scăzut între servere web și aplicații web menite să ofere un standard de bază pentru interacțiunile reciproce. [3]

Caracteristici

Exemplu

Un „ Hello world ” compatibil WSGI scris în Python :

 cerere def (environ, start_response):
    start_response ( '200 OK' , [( 'Content-Type' , 'text / plain' )])
    produce „Hello World \ n 

Unde este:

  • Linia 1: definește o funcție [5] numita application , care are doi parametri, environ și start_response . environ este un dicționar care conține variabile de mediu CGI . start_response este o funcție de apelare cu doi parametri status și response_headers .
  • Linia 2: Apelați start_response , specificând „200 OK” ca starea unui antet „Content-Type”.
  • Linia 3: Returnează corpul răspunsului ca un șir de litere.

Notă

  1. ^ WSGI
  2. ^ Informații
  3. ^ a b Despre caracteristici
  4. ^ Informații despre caracteristică - 2
  5. ^ adică „un apelant, o metodă, o clasă sau o instanță cu o metodă __call__ [ fără sursă ]

Elemente conexe

linkuri externe

Internet Portal internet : accesați intrările Wikipedia care se ocupă de internet