Django check ajax request

Django November 17, 2021 python

The Python function is_ajax(request) is designed to check if a request is an AJAX (Asynchronous JavaScript and XML) request. AJAX is a technique used in web development to send and retrieve data asynchronously from a web server without requiring a full page reload.

In the function, it checks whether the request's 'HTTP_X_REQUESTED_WITH' header is set to 'XMLHttpRequest', which is a common header sent by JavaScript libraries and frameworks (such as jQuery) when making AJAX requests. If the header is set to 'XMLHttpRequest', the function will return True, indicating that the request is an AJAX request. Otherwise, it will return False.

python
def is_ajax(request):
    return request.META.get('HTTP_X_REQUESTED_WITH') == 'XMLHttpRequest'