阅读Ajax中的HTTPResponse?
我想从Django发送一个简单的HTTPResponse。我的代码如下:阅读Ajax中的HTTPResponse?,ajax,json,request,Ajax,Json,Request,我想从Django发送一个简单的HTTPResponse。我的代码如下: jsonMessage = { "message": "Works", } return HttpResponse(simplejson.dumps(jsonMessage), mimetype='application/json') 在客户端,我只得到HTML代码,不知道如何处理它。我想问题出在客户身上。 我的代码: 服务器端运行良好。但是响应是HTML代码,而不是我想要的文本。我
jsonMessage = {
"message": "Works",
}
return HttpResponse(simplejson.dumps(jsonMessage), mimetype='application/json')
在客户端,我只得到HTML代码,不知道如何处理它。我想问题出在客户身上。
我的代码:
服务器端运行良好。但是响应是HTML代码,而不是我想要的文本。我也试过回复邮件。但这是未定义的。我认为我应该解析JSON代码。但是我不确定它在哪里传递。希望您能帮助我,请确保您的views.py函数调用路径正确
$.ajax({
type:"GET",
url:"/djangoapp/djangomethod",
contentType:'application/json; charset=utf-8'
}).done(function(msg){
console.log(msg.message);
})
.fail(function(xhr, textStatus, errorThrown){
console.log('failed');
});
}
将您的ajax代码替换为以下ajax代码:-
$,ajax({
'url': path,
'type': method,
'data': data,
'cache': false,
'processData': false,
'contentType': false,
'headers': {
'X-CSRFToken': $.cookie('csrftoken')
},
success: function( data, textStatus, jQxhr ){
$('#response pre').html( JSON.stringify( data ) );
},
error: function( jqXhr, textStatus, errorThrown ){
console.log( errorThrown );
}
});
但答案是HTML代码-什么HTML代码?您包含的Django代码似乎没有被击中。检查开发人员工具的“网络”选项卡。检查您试图提出的请求是否是实际提出的请求。调试python以使其返回所需的内容。要么没有调用python,要么有其他内容正在覆盖python。将一些调试数据打印到STDERR,并查看服务器上输出到的任何位置。如果您使用的是Django的内置webserver,请打开控制台。从头开始。三次检查URL。让Django告诉您正在执行的路由。按照代码,根据需要添加调试语句。这不起作用。它仍然是交付的HTML代码。
$,ajax({
'url': path,
'type': method,
'data': data,
'cache': false,
'processData': false,
'contentType': false,
'headers': {
'X-CSRFToken': $.cookie('csrftoken')
},
success: function( data, textStatus, jQxhr ){
$('#response pre').html( JSON.stringify( data ) );
},
error: function( jqXhr, textStatus, errorThrown ){
console.log( errorThrown );
}
});