客户端 访问 服务器 方式:
地址栏 get
a标签 get
form表单 get/post
ajax get/post
ajax中默认请求是GET, 如果改成 POST ,会报 403 forbidden的错误,解决办法就是加上 csrf_token ,具体就是将下面的注释打开就是
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="/static/jquery-3.3.1.js"></script>
</head>
<body>
{# {% csrf_token %}#}
<button class="sendA">sendAjax</button>
<script>
{#var token=$("input[name=csrfmiddlewaretoken]").val();#}
$(".sendA").click(function () {
//发送ajax 默认get 注意 ajax里面是一个字典
$.ajax(
{
url:"/sendA/",
{#type:"POST",#}
data:{
{#csrfmiddlewaretoken:token#}
},
success:function (data) {
console.log(data);
}
}
)
})
</script>
</body>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="/static/jquery-3.3.1.js"></script>
</head>
<body>
{# {% csrf_token %}#}
<button class="sendA">sendAjax</button>
<script>
{#var token=$("input[name=csrfmiddlewaretoken]").val();#}
$(".sendA").click(function () {
//发送ajax 默认get 注意 ajax里面是一个字典
$.ajax(
{
url:"/sendA/",
{#type:"POST",#}
data:{
{#csrfmiddlewaretoken:token#}
},
success:function (data) {
console.log(data);
}
}
)
})
</script>
</body>
</html>
方式汇总: https://www.cnblogs.com/yuanchenqi/articles/7638956.html#_label2
方式1
1 2 3 | $.ajaxSetup({ data: {csrfmiddlewaretoken: ‘{{ csrf_token }}‘ },}); |
方式2
1 2 3 | <form>{% csrf_token %}</form><br><br><br>$.ajax({<br>...<br>data:{ |
"csrfmiddlewaretoken":$("[name=‘csrfmiddlewaretoken‘]").val();| 1 | }<br>}) |
方式3:
| 1 | <script src="{% static ‘js/jquery.cookie.js‘ %}"></script> |
1 2 3 4 5 | $.ajax({headers:{"X-CSRFToken":$.cookie(‘csrftoken‘)},}) |
django-ajax post与get请求
原文地址:https://www.cnblogs.com/yeteng/p/10499645.html