我收到以下错误:
Access to XMLHttpRequest at 'http://127.0.0.1:8000/' from origin 'http://localhost:62570' has been blocked by CORS policy: Request header field access-control-allow-origin is not allowed by Access-Control-Allow-Headers in preflight response.
我尝试添加django-cors-headers中间件,并且CORS_ALLOW_ALL_ORIGINS = True我也做了ALLOWED_HOSTS = ['*']但仍然遇到相同的 CORS 错误。我在 NestJS 中遇到了同样的错误,但添加后app.enableCors();它得到了解决。
这是我的settings.py文件:
from pathlib import Path
BASE_DIR = Path(__file__).resolve(strict=True).parent.parent
DEBUG = True
ALLOWED_HOSTS = ['*']
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'corsheaders',
'rest_framework',
]
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware', …Run Code Online (Sandbox Code Playgroud) python django cors django-rest-framework django-cors-headers
我想构建REST API (或 GraphQL API),我想将其与Angular (2+)连接以构建一些不错的 Web 应用程序。我应该选择哪个框架开始,为什么?DjangoREST 还是 ExpressJS?其中哪一个更容易与前端框架连接?我知道python以及JavaScript。我也有使用 django 以及一些 JavaScript 前端框架(如 Angular)的经验。因此,开始使用nodejs或它们中的任何一个都不会那么困难。那么哪个更容易和更好?