Flask Academy · Lezione

Configurare CORS per i client browser

Consenta alle origini attendibili di chiamare la sua API.

Lezione 2 di 413 passaggi

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-CORS

Lo 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!

Gratis per iniziare

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

  1. Limitare le richieste con Flask-Limiter
  2. Configurare CORS per i client browser
  3. Header di sicurezza e HTTPS
  4. Validare l'input per bloccare le injection
← Torna a Flask Academy