Bagaimana untuk Mendayakan Perkongsian Sumber Silang Asal (CORS) dalam Rangka Kerja Django REST menggunakan django-cors-headers?

Susan Sarandon
Lepaskan: 2024-11-18 08:33:02
asal
286 orang telah melayarinya

How to Enable Cross-Origin Resource Sharing (CORS) in Django REST Framework using django-cors-headers?

Mendayakan CORS dalam Django REST Framework dengan django-cors-headers

Django REST Framework menyediakan cara mudah untuk memasukkan RESTful API dalam Django aplikasi. Walau bagaimanapun, secara lalai, tetapan keselamatan Django menghalang permintaan silang asal. Untuk mendayakan perkongsian sumber silang asal (CORS), anda boleh menggunakan pustaka pihak ketiga django-cors-headers.

Cara Mendayakan CORS

  1. Pasang django-cors-headers:
python -m pip install django-cors-headers
Salin selepas log masuk
  1. Tambahkan pada Apl yang Dipasang:

Edit anda Fail settings.py aplikasi Django dan tambah 'corsheaders' pada senarai INSTALLED_APPS anda:

INSTALLED_APPS = (
    ...
    'corsheaders',
    ...
)
Salin selepas log masuk
  1. Tambah Middleware:

Lanjutkan tetapan MIDDLEWARE anda untuk memasukkan CorsMiddleware daripada django-cors-headers:

MIDDLEWARE = [
    ...,
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.common.CommonMiddleware',
    ...,
]
Salin selepas log masuk
  1. Konfigurasikan Tetapan CORS:

Untuk menentukan domain yang dibenarkan untuk buat permintaan silang asal, edit tetapan CORS_ALLOWED_ORIGINS:

CORS_ALLOWED_ORIGINS = [
    'http://localhost:3030',
    # Add additional allowed origins as needed
]
Salin selepas log masuk
  1. Tetapan Tambahan:

Rujuk dokumentasi django-cors-headers untuk senarai lengkap tetapan konfigurasi CORS, termasuk menetapkan pengepala tersuai, masa tamat tempoh dan banyak lagi.

Nota: Untuk mendayakan CORS khusus untuk Rangka Kerja Django REST, anda boleh menggunakan penghias @action dengan parameter cors_allowed_origins.

Atas ialah kandungan terperinci Bagaimana untuk Mendayakan Perkongsian Sumber Silang Asal (CORS) dalam Rangka Kerja Django REST menggunakan django-cors-headers?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan