Не удалось загрузить ресурс: сервер ответил со статусом 403 (запрещено)? - PullRequest
0 голосов
/ 28 марта 2020

я отправляю javascript объект localalstorage в бэкэнд (django). Я передаю это через ajax. это код во внешнем интерфейсе.

function checkout_(){

      console.log("checkout");
      for(v in list1){

        object=Object.values(localStorage)[v];

        object = JSON.parse(object)


        }
        //ajax here
        console.log(object.length);
          $.ajax({

                url: '{% url "chout" %}',
                data: {
                   'object': object
                  },
                  method: "POST",
                  dataType: 'json',
                  success: function (data) {
                             alert("success");

                     }
                   });

Я дал эту функцию кнопке через нажатие.

<button class="bg-danger text-white " onclick="checkout_()">Go To Checkout Counter</button>

когда я нажимаю на эту кнопку, возникает ошибка «Не удалось загрузить ресурс: сервер ответил со статусом 403 (запрещено)».

в views.py это код.

views.py

def checkoutnow(request):

    return render(request, "mart/checkout.html")

Надеюсь, этой детали достаточно, чтобы объяснить проблему .. Спасибо

1 Ответ

1 голос
/ 28 марта 2020

Вы должны передать csrfmiddlewaretoken также в пост-вызове из-за промежуточного программного обеспечения csrf, установленного в настройках

const csrf = "{{ csrf_token }}";

и добавить эту пару ключ-значение к вашим данным :

data: {'csrfmiddlewaretoken':csrf, 'object': object },

Вы можете пропустить это и просто использовать GET вместо POST , если это возможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...