CORS dalam Flask: Panduan Langkah demi Langkah untuk Mendayakan Permintaan Silang Asal
Perkongsian Sumber Silang (CORS) ialah mekanisme penting untuk membenarkan permintaan merentas domain dalam aplikasi web. Flask, rangka kerja web berasaskan Python yang popular, menyediakan sokongan terbina dalam untuk CORS, menjadikannya mudah untuk mendayakan akses silang asal.
Mendayakan CORS dalam Flask
Jika anda mengalami ralat "XMLHttpRequest tidak dapat memuatkan" kerana pengepala CORS tiada, ikut langkah berikut:
Pasang flask-cors:
<code class="shell">pip install Flask-CORS</code>
Import CORS dalam Flask:
<code class="python">from flask_cors import CORS</code>
Memulakan Objek CORS:
<code class="python">cors = CORS(app)</code>
Konfigurasikan Pengepala CORS:
Kemas kini konfigurasi CORS untuk menentukan pengepala yang akan dibenarkan untuk permintaan silang asal. Secara lalai, Flask-CORS hanya membenarkan pengepala "Jenis Kandungan". Anda boleh mengembangkannya untuk memasukkan pengepala tambahan seperti yang diperlukan, seperti "Kebenaran."
<code class="python">app.config['CORS_HEADERS'] = 'Content-Type, Authorization'</code>
Gunakan CORS pada Laluan Tertentu:
Balut anda laluan dengan penghias @cross_origin() untuk mendayakan CORS untuk laluan tertentu itu.
<code class="python">@app.route("/") @cross_origin() def my_route(): ...</code>
Sebagai alternatif, anda boleh menggunakan penghias secara global pada semua laluan:
<code class="python">@app.after_request def after_request(response): response.headers.add('Access-Control-Allow-Origin', '*') response.headers.add('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS') return response</code>
Dengan langkah-langkah ini, Flask akan menambah pengepala CORS yang diperlukan secara automatik pada respons anda, membenarkan permintaan silang asal daripada domain lain.
Nota Tambahan
Atas ialah kandungan terperinci Cara Melaksanakan Perkongsian Sumber Silang Asal (CORS) dalam Flask: Panduan Langkah demi Langkah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!