gpt4 book ai didi

javascript - 在 JSON 请求中发送 csrf token (不是 ajax)

转载 作者:行者123 更新时间:2023-12-05 05:00:37 24 4
gpt4 key购买 nike

我正在尝试使用 csrf token 向我的 Django 应用程序发送 JSON 请求,但我不知道如何操作。我已经将 token 放入一个我可以引用的变量中,但我不知道如何通过带有提取的 JSON 请求发送它。我已将 'csrfmiddlewaretoken': csrftoken 添加到 body 的 JSON.stringify 部分,但我仍然收到 403 Forbidden 错误消息。有人可以帮我吗?谢谢! (抱歉代码上有奇怪的缩进)

Javascript 文件:

fetch('/update', {
method: 'PUT',
body: JSON.stringify({
'csrfmiddlewaretoken': csrftoken,
'liked': true,
'post_id': parseInt(button.dataset.post_id)
})
})

views.py:

data = json.loads(request.body)
try:
content = data.get('content')
except:
JsonResponse({'error': 'content required'}, status=400)
try:
id = data.get('id')
post = Post.objects.get(id=id)
except:
JsonResponse({'error': 'post not found'}, status=400)
if request.user == post.user:
post.content = content
post.save()
return JsonResponse({'message': f'received: {content}'})
return JsonResponse({'error': "can't edit this user's posts"}, status=403)

最佳答案

首先要获取csrf你可以使用下面的代码

从此链接获取代码clickme 1

现在我们得到了 csrf ,将这行代码添加到您的 fetch header 中

'X-CSRFToken':csrftoken,

关于javascript - 在 JSON 请求中发送 csrf token (不是 ajax),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63036722/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com