Django'nun oturum ara katman yazılımı, oturum ilk kaydedildiğinde yalnızca bir oturum anahtarı atar. Oturum anahtarını kendi ara katmanımda nasıl kullanırım?Kullanıcı oturumlarını django'da kendi ara katmanımda nasıl izlerim?
0
A
cevap
0
Yeni oturumun ilk isteği, oturum anahtarı içermiyor. İlk isteğinden kullanıcı oturumlarını izlemek amacıyla, böyle kendi özel tanımlayıcı bir şey kullanın:
import base32_crockford
import uuid
...
MY_SESSION_KEY='my_custom_session_key'
...
def process_request(self, request):
if MY_SESSION_KEY not in request.session:
if request.session.session_key is None:
my_key = base32_crockford.encode(uuid.uuid4()).lower()
request.session[MY_SESSION_KEY] = my_key
else:
request.session[MY_SESSION_KEY] = request.session.session_key
session_instance = request.session[MY_SESSION_KEY]
Bu kod varsa mevcut oturum anahtarını kullanın veya yeni rastgele anahtar yaratacaktır (I kodlamak Değerlerin daha kolay kopyalanması için base32 ile). Tercih ederseniz, UUID'nin dize değerini doğrudan kullanabilirsiniz.
Lütfen bunu özgün yazınıza ekleyin ve bu cevabı kaldırın. –
Başkalarının benzer bir durumu olması durumunda kendi sorumu yanıtladım. – Darren