Django用ajax進行post請求

post請求有兩種,跨域和不跨域html

一、不跨域jquery

# 不跨域的 view.py

def
re_json(request): print(request.POST['name']) p1 = ProductModel.objects.all() data = [] for item in p1: data.append({ 'name':item.name, 'brief':item.brief, 'img_url':'/'+str(item.prodectImg), 'time':str(item.pub_date), }.copy()) ls = json.dumps(data,ensure_ascii=False) info = HttpResponse(ls) # 下面這兩行設置誇域請求,跨域就是用這兩行 # info['Access-Control-Allow-Origin'] = '*' # info['Access-Control-Allow-Headers'] = "Content-Type" return info
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ajax請求</title>
</head>
<body>
    <div>八戒你瘦了</div>
    <button id="dj">獲取數據</button>
    <script src="/static/js/jquery.min.js"></script>
    <script>
        $('#dj').click(function () {
        // 不跨域要攜帶csrf_token 過去。 info = { csrfmiddlewaretoken: '{{ csrf_token }}', // 爲了防止csrf_token的攔截,因此必須帶這個過去。 name:'老王' }; $.ajax({ url:'http://127.0.0.1:8000/re_json/', type:'post', data:info, success:function (res) { data = JSON.parse(res); console.log(data); }, }) }) </script> </body> </html>
相關文章
相關標籤/搜索