Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
65 lines (33 sloc) 2.71 KB

Middlewares padrão

django.middleware.common.CommonMiddleware

Middleware responsável por alguns comportamentos comuns e pequenos do Django, destacando-se:

  • Bloqueio de acesso para navegadores definidos na settings "DISALLOWED_USER_AGENTS";
  • Redirecionamento baseado nas settings "APPEND_SLASH" e "PREPEND_WWW";
  • Cálculo de ETags com base na setting_ "USE_ETAGS".

django.middleware.transaction.TransactionMiddleware

Habilita o estado de transação nas views. Isso significa que a persistência em banco de dados feita nas views é feita com base no recurso de transactions.

django.middleware.cache.UpdateCacheMiddleware

Armazena em cache o resultado da URL após sua renderização (caso esta URL não esteja parametrizada para evitar caching).

django.middleware.cache.FetchFromCacheMiddleware

Carrega do cache o conteúdo da URL se este existir.

django.middleware.cache.CacheMiddleware

Trata-se da soma dos middlewares "UpdateCacheMiddleware" e "FetchFromCacheMiddleware".

django.middleware.doc.XViewMiddleware

Adiciona o cabeçalho "X-View" para requisições do tipo "HEAD".

django.middleware.locale.LocaleMiddleware

Acrescenta suporte à internacionalização.

django.middleware.gzip.GZipMiddleware

Comprime o resultado da URL em formato GZip para navegadores que tenham suporte a isso. É uma boa opção para melhorar a performance em tempo de resposta, mas por outro lado aumenta a exigência do processador do servidor.

django.middleware.http.ConditionalGetMiddleware

Acrescenta suporte a operações condicionais de requisições "GET". Isso aumenta a performance em navegadores que tenham suporte a cache local e operações condicionais. Na prática, o Django passa a responder ao navegador se a URL foi modificada ou não depois da sua última atualização e assim evita retornar código redundante.

Middlewares de aplicações contrib

django.contrib.auth.middleware.AuthenticationMiddleware

Acrescenta o suporte padrão de autenticação da aplicação "auth".

django.contrib.csrf.middleware.CsrfMiddleware

Acrescenta proteção aos formulários contra ataques do tipo Cross Site Request Forgery. É um composto de outros dois middlewares: "CsrfViewMiddleware" e "CsrfResponseMiddleware".

django.contrib.flatpages.middleware.FlatpageFallbackMiddleware

Acrescenta suporte à aplicação "flatpages" que permite a criação dinâmica de páginas planas.

django.contrib.redirects.middleware.RedirectFallbackMiddleware

Acrescenta suporte a redirecionamentos da aplicação "redirects".

django.contrib.sessions.middleware.SessionMiddleware

Acrescenta suporte a sessões.