Python 接受Django中URL.py上的参数

Python 接受Django中URL.py上的参数,python,django,Python,Django,我正在尝试使用两个ID访问一个功能,并通过POST发送一条消息,以创建一个小型聊天功能。问题是当我这样做的时候,我得到了403(禁止) 我如何将其保存在数据库中非常简单:有一个表,每个人对应2个键,我在一个对话字段上连接 我通过JQuery打电话: $('#send-message').bind("enterKey",function(e){ alert("CLINK"); $.post( "url/to/send/message/

我正在尝试使用两个ID访问一个功能,并通过POST发送一条消息,以创建一个小型聊天功能。问题是当我这样做的时候,我得到了403(禁止)

我如何将其保存在数据库中非常简单:有一个表,每个人对应2个键,我在一个对话字段上连接

我通过JQuery打电话:

        $('#send-message').bind("enterKey",function(e){
            alert("CLINK");
            $.post( "url/to/send/message/{{personA.id}}/{{personB_id}}", function( data ) {
                $( "#container" ).html( data );
            });
        });
        $('#send-message').keyup(function(e){
            if(e.keyCode == 13)
            {
            $(this).trigger("enterKey");
            }
        });            
并对其进行处理:

def conversation_add(request, trainer_id, trainee_id):
    new_convo = ""
    if request.method == 'POST':
        text = HttpRequest.getlist("messgae")
        convo = Conversation.objects.filter(trainer=trainer_id, trainee=trainee_id)
        new_convo = convo.conversation + text + "\n"
    return render_to_response("plain.html", {'res':new_convo}, context_instance=RequestContext(request))
我不太确定这是否与我为什么得到403有关,但我决定发布它并解释一下,以防万一

关于Django的内部结构,我需要考虑什么才能打这个电话吗


谢谢

看起来您正在点击可以解释403禁止响应的按钮

您需要像在模板中一样添加
{%csrf_token%}
,然后在AJAX帖子上添加请求前回调函数beforeSend来发送令牌:

beforeSend: function (request) {
   request.setRequestHeader("X-CSRFToken",
       $('input[name="csrfmiddlewaretoken"]').val());
   },

您也可以禁用保护,但我建议不要这样做

看起来您正在点击可以解释403禁止响应的按钮

您需要像在模板中一样添加
{%csrf_token%}
,然后在AJAX帖子上添加请求前回调函数beforeSend来发送令牌:

beforeSend: function (request) {
   request.setRequestHeader("X-CSRFToken",
       $('input[name="csrfmiddlewaretoken"]').val());
   },

您也可以禁用保护,但我建议不要这样做

看起来您正在点击可以解释403禁止响应的按钮

您需要像在模板中一样添加
{%csrf_token%}
,然后在AJAX帖子上添加请求前回调函数beforeSend来发送令牌:

beforeSend: function (request) {
   request.setRequestHeader("X-CSRFToken",
       $('input[name="csrfmiddlewaretoken"]').val());
   },

您也可以禁用保护,但我建议不要这样做

看起来您正在点击可以解释403禁止响应的按钮

您需要像在模板中一样添加
{%csrf_token%}
,然后在AJAX帖子上添加请求前回调函数beforeSend来发送令牌:

beforeSend: function (request) {
   request.setRequestHeader("X-CSRFToken",
       $('input[name="csrfmiddlewaretoken"]').val());
   },


您也可以禁用保护,但我建议不要这样做

您是否在ajax帖子中添加了CSRF令牌?什么是
数据
?数据中是否有
csrf\u标记
?另外
text=HttpRequest.getlist(“messgae”)
应该是
text=request.getlist(“messgae”)
@danielcorreia显然不是,因为他似乎根本没有在帖子中发送任何数据(Ajax调用只有一个URL和一个回调)。没错,在我实际检查是否发送数据之前,我偶然发现了403。我将在可能的情况下修改帖子以正确显示示例。@karthikr text=request.getlist给了我一个错误WSGIRequest对象没有属性“getlist”您在ajax帖子中添加了CSRF令牌了吗?什么是
数据
?数据中是否有
csrf\u标记
?另外
text=HttpRequest.getlist(“messgae”)
应该是
text=request.getlist(“messgae”)
@danielcorreia显然不是,因为他似乎根本没有在帖子中发送任何数据(Ajax调用只有一个URL和一个回调)。没错,在我实际检查是否发送数据之前,我偶然发现了403。我将在可能的情况下修改帖子以正确显示示例。@karthikr text=request.getlist给了我一个错误WSGIRequest对象没有属性“getlist”您在ajax帖子中添加了CSRF令牌了吗?什么是
数据
?数据中是否有
csrf\u标记
?另外
text=HttpRequest.getlist(“messgae”)
应该是
text=request.getlist(“messgae”)
@danielcorreia显然不是,因为他似乎根本没有在帖子中发送任何数据(Ajax调用只有一个URL和一个回调)。没错,在我实际检查是否发送数据之前,我偶然发现了403。我将在可能的情况下修改帖子以正确显示示例。@karthikr text=request.getlist给了我一个错误WSGIRequest对象没有属性“getlist”您在ajax帖子中添加了CSRF令牌了吗?什么是
数据
?数据中是否有
csrf\u标记
?另外
text=HttpRequest.getlist(“messgae”)
应该是
text=request.getlist(“messgae”)
@danielcorreia显然不是,因为他似乎根本没有在帖子中发送任何数据(Ajax调用只有一个URL和一个回调)。没错,在我实际检查是否发送数据之前,我偶然发现了403。我将在可能的情况下修改帖子以正确显示示例。@karthikr text=request.getlist给了我一个错误WSGIRequest对象没有属性“getlist”