在模板中我发送数据使用XMLHttpResponse。
我的代码如下:
...
<input type="button" value="ajax1" onclick="ajax1()">
<script>
function ajax1(){
var xhr = new XMLHttpRequest();
xhr.open('GET', '/ajax1/', true);
xhr.send("name=root;pwd=123"); // send data
}
</script>
但我如何在views.py
中接收数据?
在我的views.py
:
def ajax1(request):
print request.GET.get('name'), request.GET.get('pwd') # all is None.
return HttpResponse('ajax1')
您看,我使用request.GET.get(param_key)
来获取数据失败。
如何让我的views.py中的XMLHttpResponse发送数据?
答案 0 :(得分:0)
您应该知道XMLHttpResponse的send()
方法是发送请求正文。
您的请求方法是GET。所以你不能传递数据。
您尝试使用post方法传递如下数据:
function ajax1(){
var xhr = getXHR();
xhr.onreadystatechange = function(){
if (xhr.readyState == 4) {
console.log(xhr.responseText);
var json_obj = JSON.parse(xhr.responseText);
console.log(json_obj);
}
};
xhr.open("POST", "/ajax1/", true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset-UTF-8"); // add the request header
xhr.send("name=root; pwd=123;"); // send data
}