    indexer would treat them as separate URLs -- so it's best practice to
    normalize URLs.
  
  * Sets the ``Content-Length`` header for non-streaming responses.
  
  .. attribute:: CommonMiddleware.response_redirect_class
  
  Defaults to :class:`~django.http.HttpResponsePermanentRedirect`. Subclass
  ``CommonMiddleware`` and override the attribute to customize the redirects
 
</s> remove     Return True if the given path resolves against the default URL resolver,
    False otherwise. This is a convenience method to make working with "is
    this a match?" cases easier, avoiding try...except blocks.
 </s> add     Return the ResolverMatch if the given path resolves against the default URL
    resolver, False otherwise. This is a convenience method to make working
    with "is this a match?" cases easier, avoiding try...except blocks. </s> remove             return (
                not is_valid_path(request.path_info, urlconf) and
                is_valid_path('%s/' % request.path_info, urlconf)
            )
 </s> add             if not is_valid_path(request.path_info, urlconf):
                match = is_valid_path('%s/' % request.path_info, urlconf)
                if match:
                    view = match.func
                    return getattr(view, 'should_append_slash', True) </s> remove         resolve(path, urlconf)
        return True
 </s> add         return resolve(path, urlconf)
  If necessary, individual views may be excluded from the ``APPEND_SLASH``
  behavior using the :func:`~django.views.decorators.common.no_append_slash`
  decorator::

    from django.views.decorators.common import no_append_slash

    @no_append_slash
    def sensitive_fbv(request, *args, **kwargs):
        """View to be excluded from APPEND_SLASH."""
        return HttpResponse()

  .. versionchanged:: 3.2

    Support for the :func:`~django.views.decorators.common.no_append_slash`
    decorator was added.

    indexer would treat them as separate URLs -- so it's best practice to
    normalize URLs.
  
  If necessary, individual views may be excluded from the ``APPEND_SLASH``
  behavior using the :func:`~django.views.decorators.common.no_append_slash`
  decorator::

    from django.views.decorators.common import no_append_slash

    @no_append_slash
    def sensitive_fbv(request, *args, **kwargs):
        """View to be excluded from APPEND_SLASH."""
        return HttpResponse()

  .. versionchanged:: 3.2

    Support for the :func:`~django.views.decorators.common.no_append_slash`
    decorator was added.

  * Sets the ``Content-Length`` header for non-streaming responses.
  
  .. attribute:: CommonMiddleware.response_redirect_class
  
  Defaults to :class:`~django.http.HttpResponsePermanentRedirect`. Subclass
  ``CommonMiddleware`` and override the attribute to customize the redirects
keep keep add keep keep keep keep keep keep
 Fixed #32124 -- Added per-view opt-out for APPEND_SLASH behavior. 
docs/ref/middleware.txt