Получаем ошибку, когда хотим POST что-то в api{detail: "CSRF Failed: CSRF токен отсутствует."}

Когда я хочу отправить POST в API, я получаю эту ошибку : CSRF TOKEN, но у меня нет CSRF Token в django, я хочу POST без CSRF токена. Я могу отправить POST с помощью Postman, но когда я хочу отправить его с помощью js, я получаю ошибку, о которой я говорил вначале. как мне быть?

    let edit_data = {
        user_id: "1",
        company: "rahaaaa",
        description: "12343234234",
        first_name: "324234234234312sd",
        id_number: "122222",
        last_name: "32423dqwe32",
    }
    let c = JSON.stringify(edit_data)
    console.log(c);



    fetch("http://127.0.0.1:8000/api/postCustomer/", {
        headers: { 
            "Content-Type": "application/json",     
        },

        method: "POST",
        body:c,




    })
    .then(res => res.json())
    .then(data => console.log(data))
    .catch(err => console.log(err));

Когда я хочу отправить POST в API, я получаю эту ошибку : CSRF TOKEN, но у меня нет CSRF Token в django, я хочу POST без CSRF токена. как я могу это сделать?

Сообщите вашему методу post-view, что вы не хотите проверять CSRF-токен.

Вы можете использовать следующий декоратор, если вы используете представления на основе функций.

from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def my_view(request):
    return HttpResponse('Hello world')

Если вы используете представления на основе классов, то

from django.http import HttpResponse
from django.utils.decorators import method_decorator
from django.views import View
from django.views.decorators.csrf import csrf_exempt
 
@method_decorator(csrf_exempt, name='dispatch')
class YourViewName(View):
    # Your Post Method
    def post(self, request):
        return HttpResponse('OK')
Вернуться на верх