我已经为Django集成安装了Chatterbot。我遵循简易教程的每一步,使它的端点是:http://127.0.0.1:8000/chatterbot/
我下一步做的是尝试与该端点通信,看看我是否会得到任何结果。因此,我提出了如下Ajax请求:
var query = {"text": "My input statement"};
$.ajax({
type: 'POST',
url: "http://127.0.0.1:8000/chatterbot/",
data: JSON.stringify(query),
contentType: 'application/json',
success: function (data) {
console.log(data);
}
});
但是,在控制台中返回的是:POST http://127.0.0.1:8000/chatterbot/ 403 (Forbidden)
,在运行服务器时在cmd提示符中返回的是:
csrf: WARNING - Forbidden (CSRF token missing or incorrect.): /chatterbot/ [29/Mar/2018 02:16:43] "POST /chatterbot/ HTTP/1.1" 403 2502
为什么我会犯这个错误?如何修复它以便接收来自端点的回叫?你知道吗
查看此页:
def IndexView(request):
latest_questions = Questions.objects.all().order_by("-date_published")[:5]
popular_questions = Questions.objects.all().order_by("-num_replies")[:5]
return render(request, 'core/index.html',
{'latest_questions': latest_questions, 'popular_questions': popular_questions
})
尝试此代码
一种方法是像下面这样发送
csrfmiddlewaretoken
另一种方法是使用
@csrf_exempt
装饰器另一种是添加脚本
引用:https://docs.djangoproject.com/en/2.0/ref/csrf/
如果您不想使用CSRF令牌,只需在代码上方添加这个。你知道吗
相关问题 更多 >
编程相关推荐