def is_ajax(self):
return self.META.get('HTTP_X_REQUESTED_WITH') == 'XMLHttpRequest'
is_ajax()會判斷請求頭里 'HTTP_X_REQUESTED_WITH'的值。如果請求方式不為ajax,那么請求頭里是不含'HTTP_X_REQUESTED_WITH'的。如果是ajax請求,is_ajax()則會返
回True.
前端代碼:
$.ajax({
url: '/app2/host/', // url一定要寫成相對路徑
type: 'POST',
data: {'choice':del}, // data中的參數如果含有特殊字符,如'-' '%' '$' 等會導致ajax傳到后端的數據攜帶隨機特殊字符!!!!
complete: function () {
console.log('aaa')
},
success: function (data) {
if(data === 'success')
console.log(data)
}
})
后端代碼:
def host(request):
if request.is_ajax():
print('get ajax')
if request.POST.get('choice', None):
choice = request.POST.get('choice')
print(choice)
return HttpResponse('success')
else:
return HttpResponse('failed')