【问题标题】:Django : Ajax Post error : POST //[object%20Object] HTTP/1.1" 405 0Django:Ajax 发布错误:POST //[object%20Object] HTTP/1.1" 405 0
【发布时间】:2015-04-12 09:59:25
【问题描述】:

我正在尝试使用 ajax 登录方法。我收到一个错误“POST //[object%20Object] HTTP/1.1”405 0”。我不知道我在哪里犯了错误。

views.py

class LoginVerify(View):
    print('login')
    def post(self,request,*args,**kwargs):
        print("post called")
        return HttpResponse("verified")

html

<script>
      $(document).ready(function(){
          $("#loginform").on("submit", function(){
             $.post({
                 data: {csrfmiddlewaretoken:'{{ csrf_token }}'},
             url: "{% url 'feeds:login_view' %}",
             success: function(data){
                  alert(data);
              },
    error: function(xhr, ajaxOptions, thrownError){
        alert('login failed - please try again');
    }
});
          });
      });
    </script>

  <body> 
  <form id ="login_form" method="post"> 
{% csrf_token %} 
<input type="text" id="username">
<input type ="password" id="password" />
<input type="submit" value="login" />
</form> 

urls.py

   urlpatterns = patterns('',
                           url(r'^hello/',views.FeedContents.as_view(),name='main'),
                           url(r'^$',views.LoginVerify.as_view(),name="login_view"),
                      )

请保存我的一天..提前谢谢

结果: 浏览器中显示空白页面.. 并且在终端中显示“[12/Apr/2015 15:41:51]“POST /hello/ HTTP/1.1”405 0”

【问题讨论】:

  • 能否编辑并添加模板渲染后的jQuery脚本的结果代码?

标签: jquery python ajax django post


【解决方案1】:

您只将csrf_token 发布到服务器,您应该使用FormData 序列化您的表单数据并将其发送到您的服务器。 var fd = new FormData($("#loginform")[0]); $.post({ data: fd, url: "{% url 'feeds:login_view' %}", // and other stuff })

【讨论】:

    猜你喜欢
    • 2019-02-26
    • 2021-01-21
    • 1970-01-01
    • 2011-04-10
    • 2012-06-30
    • 1970-01-01
    • 2021-05-19
    • 1970-01-01
    • 2011-09-30
    相关资源
    最近更新 更多