Configurare CORS per i client browser
Consenta alle origini attendibili di chiamare la sua API.
Configurare CORS per i client browser è una lezione Flask Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Flask Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Flask Academy include 4 lezioni in totale.
Perché i browser bloccano le chiamate
Per motivi di sicurezza, per impostazione predefinita un browser rifiuta le richieste cross-origin. Questa same-origin policy impedisce a un sito di leggere silenziosamente i dati di un altro.
Cos'è davvero CORS
CORS è un insieme di intestazioni della risposta che indicano quali altre origini possono chiamare la Sua API. Apre intenzionalmente la porta.
Definizione di origin
Un'origin è l'insieme di schema, host e porta. Una porta diversa, oppure http invece di https, costituisce un'origine separata.
Conosciamo Flask-CORS
Raramente è necessario scrivere manualmente le intestazioni. L'estensione Flask-CORS aggiunge quelle corrette a ogni risposta.
pip install Flask-CORSLo abiliti globalmente
La configurazione più semplice avvolge l'intera app. La chiamata CORS(app) consente qualsiasi origine, il che va bene durante l'apprendimento.
from flask_cors import CORS
CORS(app)Limiti l'accesso alle origini attendibili
Nelle applicazioni reali, indichi chi può effettuare chiamate usando origins. Tutto ciò che non è nell'elenco viene comunque bloccato dal browser.
CORS(app, origins=["https://app.example.com"])Limiti le route interessate
Può applicare CORS a un prefisso di percorso tramite resources. In questo modo solo il namespace della Sua API viene aperto ai chiamanti esterni.
CORS(app, resources={r"/api/*": {"origins": "*"}})L'intestazione fondamentale
Dietro le quinte, l'elemento essenziale è Access-Control-Allow-Origin. Il browser lo legge per decidere se consegnare la risposta al Suo codice.
Richieste di preflight
Per alcune chiamate, il browser invia prima un preflight OPTIONS per chiedere il permesso. Flask-CORS risponde automaticamente.
Consentire le credenziali
Per inviare cookie cross-origin deve impostare supports_credentials. Tenga presente che in questo caso non è più consentita un'origine wildcard.
CORS(app, supports_credentials=True)CORS non è autenticazione
Ricordi che CORS fornisce indicazioni solo ai browser. Non è una barriera di sicurezza, quindi la Sua API ha comunque bisogno di una vera autenticazione.
Verifica rapida
Scelga dove viene applicata la decisione CORS.
Riepilogo
Ha visto perché i browser bloccano le chiamate cross-origin, aggiunto Flask-CORS, limitato origini e route, conosciuto il preflight e imparato che CORS non è autenticazione. Ben fatto!
Impara Python con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «Configurare CORS per i client browser» è gratuita?
Sì — il testo completo di «Configurare CORS per i client browser» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Flask Academy, passa a CoddyKit PRO. Il corso Flask Academy include 4 lezioni in totale.
Cosa imparerò in «Configurare CORS per i client browser»?
Consenta alle origini attendibili di chiamare la sua API. Eserciti Flask Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Flask Academy?
Non è richiesta alcuna esperienza precedente. Flask Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Configurare CORS per i client browser»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Flask Academy?
Sì. Ogni lezione Flask Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Limitare le richieste con Flask-Limiter
- Configurare CORS per i client browser
- Header di sicurezza e HTTPS
- Validare l'input per bloccare le injection