django-urlcrypt est une application Django qui crypte les informations dans les URL, tels que les identifiants de connexion.
Par exemple, supposons que je dois modèles url qui ressemble à ceci:
urlpatterns = patterns ('',
& Nbsp; url (r '^ boîte de réception / $', 'message_inbox', nom = 'message_inbox'),
& Nbsp; (r '^ r /', include ('urlcrypt.urls')),
)
commentaires de développeurs
Je peux utiliser django-urlcrypt pour générer une URL pour un utilisateur qui ressemble à:
http://www.mydomain.com/r/TkNJBkNFAghDWkdFGPUAQEfcDUJfEBIREgEUFl1BQ18IQkdDUUcPSh4ADAYAWhYKHh8KHBsHEw
et se connectera automatiquement cette personne et qu'ils / boîte / redirections.
Installation
& Nbsp; 1. easy_install django-urlcrypt ou PIP installer django-urlcrypt
& Nbsp; 2. Ajouter à vos urlcrypt INSTALLED_APPS
& Nbsp; 3. En complément urls.py:
& Nbsp; (r '^ r /', include ('urlcrypt.urls')),
Utilisation
Dans une vue:
de django.core.urlresolvers importation inverse
lib de l'importation urlcrypt que urlcrypt
token = urlcrypt.generate_login_token (utilisateur, d'inverser ('message_inbox'))
encoded_url = reverse ('urlcrypt_redirect', args = (jeton,))
# vôtre sera légèrement différent parce que vous avez un secret_key différent, mais environ
# Encoded_url == / r / TkNJBkNFAghDWkdFGPUAQEfcDUJfEBIREgEUFl1BQ18IQkdDUUcPSh4ADAYAWhYKHh8KHBsHEw
Dans un modèle:
{% De charge urlcrypt_tags%}
cliquez me connecter en tant que {{}} user.username et aller à {% url message_inbox%}
Utilisation avancée lib:
lib de l'importation urlcrypt que urlcrypt
message = {
& Nbsp; 'url': u '/ utilisateurs / suivante /',
& Nbsp; "user_id": "12345"
}
token = urlcrypt.encode_token (un message ['user_id'], un message ['url'])
decoded_message = urlcrypt.decode_token (jeton, ("user_id", 'url', 'timestamp'))
>>> Print jeton
TkNJBkNFAghDWkdFGPUAQEfcDUJfEBIREgEUFl1BQ18IQkdDUUcPSh4ADAYAWhYKHh8KHBsHEw
>>> Print decoded_message
{"Url": "/ users / suivant ',' user_id ':' 12345 '}
Paramètres
URLCRYPT_LOGIN_URL défaut: LOGIN_URL
Si l'authentification échoue urlcrypt, redirige vers URLCRYPT_LOGIN_URL.
RUNNING_TESTS défaut: False
Réglez RUNNING_TESTS à True lorsque l'exécution des tests de urlcrypt
Exigences :.
- Python
Commentaires non trouvées