Django csrf отслеживает ajax запросы не работают - PullRequest
0 голосов
/ 31 января 2020

Я получил запрос типа ajax, сгенерированный с javascript, но мое приложение django выдает ошибку «Запрещено (токен csrf отсутствует или неверен)». Он работает по первоначальному почтовому запросу, но не работает по последующим.

Я использую UIKit, поэтому мой запрос выглядит так:

UIkit.upload('.js-upload', {
      url: '',
      multiple: true,
      mime: "image/*",
      name: "sketches",
      type: "json",
      params: {
        "csrfmiddlewaretoken": Cookies.get('csrftoken'),
      },
      completeAll: function (e) {
          console.log('completeAll', e.response);
      }
  });

Я также попытался загрузить csrf, установив:

params: {
        "csrfmiddlewaretoken": {{ csrf_token }},
      },

И получить тот же результат; работает с первой загрузкой и завершается неудачей при последующих загрузках. django вращает csrf_token с каждым запросом? Могу ли я получить доступ к новому токену в моих представлениях, чтобы передать его через json обратно во внешний интерфейс для следующего запроса?

...