pyramid_subscribers_cookiexfer

Tela Software:
pyramid_subscribers_cookiexfer
Detalhes de Software:
Versão: 0.0.3
Data de upload: 14 Apr 15
Revelador: Jonathan Vanasco
Licença: Livre
Popularidade: 6

Rating: 2.0/5 (Total Votes: 1)

pyramid_subscribers_cookiexfer é um módulo Python que permite que você transfira os cookies do pedido para a resposta em uma exceção http. Você pode precisar isso como redirecionamentos são subclasses de httpexceptions.
Overview

Um fluxo de usuário típico poderia ser esta:
* Usuário envia formulário para / conta / login
* Autentica backend, define vários bolinhos
* Backend redireciona para / conta / home
Se você só manter os dados por meio de sessões de pirâmide isso não é necessário - o cookie de sessão pirâmide é definida antes de autenticação, para que os dados persistir através do redirecionamento.
Isso é útil se você estiver configurando informações auxiliares através de cookies do navegador, tais como o armazenamento em cache os dados do usuário no cliente.
Quase todos os navegadores respeite um cabeçalho SetCookie em um redirecionamento - só Safari é conhecido por ignorar esta. & Nbsp; Muitos desenvolvedores têm armazenado biscoitos em dados da sessão para mostrar em futuras visitas, esse pacote automatiza isso.
Dois métodos estão disponíveis para manter as informações
- add_headers - transferências cabeçalhos de cookies do pedido para a resposta
- Session_save - salva os cookies que você deseja definir para a sessão, migra-los para a resposta na próxima pageview
Além disso, o pacote oferece a capacidade de 'exclusividade' gerenciar os cookies para evitar duplicatas. & Nbsp; agora esse comportamento é recomendado.
O pacote é configurado através de algumas variáveis ​​definidas em seus arquivos ini, então habilitado com uma importação e chamar de "inicializar" em seus ini
Os mecanismos internos são bastante simples:
& Nbsp; & nbsp; & nbsp; config.add_subscriber (
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; new_request,
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 'Pyramid.events.NewRequest')
& Nbsp; & nbsp; & nbsp; config.add_subscriber (
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; new_response,
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 'Pyramid.events.NewResponse')
& Nbsp; & nbsp; & nbsp;
A fim de ajudar na depuração e reduzir o tempo de processamento:
- Initialize_subscribers () só irá instalar um ouvinte NewResponse se sessioning será usado
- Um regex configurável é usado para eliminar caminhos do módulo (incluindo instruções de depuração)
Notas importantes:
- Este pacote irá respeitar os cabeçalhos que são criados com o HttpException
- Por causa de como internos obra de pirâmide, você deve 'return' o redirecionamento - não 'raise' - se você quer biscoitos transferidos da request.response. & Nbsp; Se levantar '' um redirecionamento, apenas os cabeçalhos usados ​​para inicializar o redireccionamento pode ser armazenado na sessão (que existem no novo objecto resposta e não precisa de ser transferido)
Estas situações vai funcionar:
Alguns exemplos de casos
& Nbsp; & nbsp; & nbsp; retornar HTTPFound (location = '/ new / location')
& Nbsp; & nbsp; & nbsp; - Quaisquer cookies criados por request.response.set_cookie serão transferidos
& Nbsp; & nbsp; & nbsp;
& Nbsp; & nbsp; & nbsp; retornar HTTPFound (location = '/ new / local', headers = dict_of_headers)
& Nbsp; & nbsp; & nbsp; - Os cabeçalhos no dict_of_headers já estão na nova resposta, e pode persistir até a sessão
& Nbsp; & nbsp; & nbsp; - Quaisquer cookies criados por request.response.set_cookie serão transferidos
& Nbsp; & nbsp; & nbsp;
& Nbsp; & nbsp; & nbsp; levantar HTTPFound (location = '/ new / location')
& Nbsp; & nbsp; & nbsp; - NO cookies criados por request.response.set_cookie serão transferidos
& Nbsp; & nbsp; & nbsp; levantar HTTPFound (location = '/ new / local', headers = dict_of_headers)
& Nbsp; & nbsp; & nbsp; - Os cabeçalhos no dict_of_headers já estão na nova resposta, e pode persistir até a sessão
& Nbsp; & nbsp; & nbsp; - NO cookies criados por request.response.set_cookie serão transferidos
Configuração
environment.ini
& Nbsp; & nbsp; & nbsp; cookie_xfer.redirect_add_headers = True
& Nbsp; & nbsp; & nbsp; cookie_xfer.redirect_add_headers__unique = True
& Nbsp; & nbsp; & nbsp; cookie_xfer.redirect_session_save = False
& Nbsp; & nbsp; & nbsp; cookie_xfer.redirect_session_save__unique = False
& Nbsp; & nbsp; & nbsp; cookie_xfer.re_excludes = "^ / (css | img | js | deformação | _debug_toolbar)"
& Nbsp; & nbsp; & nbsp;
app / __ init__.py
& Nbsp; & nbsp; & nbsp; pyramid_subscribers_cookiexfer importação
& Nbsp; & nbsp; & nbsp;
& Nbsp; & nbsp; & nbsp; def principais (global_config, ** configurações):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ...
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; pyramid_subscribers_cookiexfer.initialize (config, configurações)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ...

Requisitos :

  • Python
  • pirâmide

Outro software de desenvolvedor Jonathan Vanasco

gaq_hub
gaq_hub

14 Apr 15

imagehelper
imagehelper

14 Apr 15

Comentário para pyramid_subscribers_cookiexfer

Comentários não encontrado
Adicionar comentário
Ligue imagens!