溫馨提示×

django restful 框架如何處理跨域請求

小樊
99
2024-10-15 17:06:24
欄目: 編程語言

在 Django RESTful 框架中處理跨域請求,可以使用 Django 的第三方庫 django-cors-headers。以下是安裝和配置該庫的步驟:

  1. 安裝 django-cors-headers
pip install django-cors-headers
  1. 在 Django 項目的 settings.py 文件中,將 corsheaders 添加到 INSTALLED_APPS 列表中:
INSTALLED_APPS = [
    # ...
    'corsheaders',
    # ...
]
  1. settings.py 文件中,配置 MIDDLEWARE 列表,將 corsheaders.middleware.CorsMiddleware 添加到列表的開頭:
MIDDLEWARE = [
    # ...
    'corsheaders.middleware.CorsMiddleware',
    # ...
]
  1. 配置 CORS_ORIGIN_ALLOW_ALL 允許所有來源的跨域請求(在生產環境中,建議僅允許可信來源):
CORS_ORIGIN_ALLOW_ALL = True

或者,你可以指定允許的跨域請求來源:

CORS_ORIGIN_WHITELIST = [
    'http://localhost:3000',
    'http://example.com',
]
  1. 如果需要設置跨域請求的允許方法、允許頭部等,可以在 settings.py 文件中配置 CORS_ALLOW_METHODSCORS_ALLOW_HEADERS
CORS_ALLOW_METHODS = [
    'DELETE',
    'GET',
    'OPTIONS',
    'PATCH',
    'POST',
    'PUT',
]

CORS_ALLOW_HEADERS = [
    'accept',
    'accept-encoding',
    'authorization',
    'content-type',
    'dnt',
    'origin',
    'user-agent',
    'x-csrftoken',
    'x-requested-with',
]

完成以上步驟后,Django RESTful 框架就可以處理跨域請求了。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女