Python Ajax请求及返回 jso

发布时间:2019-09-17 07:46:55编辑:auto阅读(1540)

    前台表单:

    <div action="login_in" method="post">
        {% csrf_token %}
        <input type="text" name="user" id="user">
        <input type="text" name="pwd" id="pwd">
        <input type="submit" id="btn" value="登录">
    </div>
    <script>
        $(function () {
            $("#btn").click(function () {
               var data = JSON.stringify({"user":$("#user").val(),"pwd":$("#pwd").val()})
                $.ajax({
                    url:"login_in",
                    contentType:'application/json;charset=UTF-8',
                    type:"POST",
                    data:data,
                    beforeSend: function(xhr, settings) {
                        var token =  $('input[name=csrfmiddlewaretoken]').val()
                        xhr.setRequestHeader("X-CSRFToken",token);
                    },
                    {% comment %}beforeSend:function (xhr,settings) {
                        xhr.setRequestHeader("X-CSRFtoken",$.cookie("csrftoken"))
                    },{% endcomment %}
                    success:function (data) {
                        console.log(data)
                    },error:function (error) {
                        console.log("error")
                        console.log(error)
                    }
                })
            });
        })
    </script>

    后台函数:

    from django.shortcuts import render,HttpResponse
    import json
    class Blog():
        def login_in(req):
            if req.method == 'POST':
                data = json.loads(req.body)
                if data['user'] == "admin" and  data['pwd'] == "123":
                    return HttpResponse(json.dumps(data), content_type='application/json')
            return render(req, 'error.html')

    Python Ajax请求及返回 json

关键字