Tôi đã nhận xét về bộ xử lý csrf và các dòng phần mềm trung gian trong settings.py
:
122
123 TEMPLATE_CONTEXT_PROCESSORS = (
124 'django.contrib.auth.context_processors.auth',
125 # 'django.core.context_processors.csrf',
126 'django.core.context_processors.request',
127 'django.core.context_processors.static',
128 'cyathea.processors.static',
129 )
130
131 MIDDLEWARE_CLASSES = (
132 'django.middleware.common.CommonMiddleware',
133 'django.contrib.sessions.middleware.SessionMiddleware',
134 # 'django.middleware.csrf.CsrfViewMiddleware',
135 'django.contrib.auth.middleware.AuthenticationMiddleware',
136 'django.contrib.messages.middleware.MessageMiddleware',
137 'django.middleware.locale.LocaleMiddleware',
138 # Uncomment the next line for simple clickjacking protection:
139 # 'django.middleware.clickjacking.XFrameOptionsMiddleware',
140 )
Nhưng khi tôi sử dụng Ajax để gửi yêu cầu, Django vẫn trả lời 'mã thông báo csrf không chính xác hoặc bị thiếu' và sau khi thêm X-CSRFToken vào tiêu đề, yêu cầu sẽ thành công.
Chuyện gì đang xảy ra ở đây ?