Django 通過 session 儲存個人資訊

2022-08-21 04:24:14 字數 1501 閱讀 1752

通過 session 儲存 個人 資訊

登入的檢視函式中:

def login(request):

''' 登入 '''

err, user, pwd = '', '', ''

if request.method == 'post':

user = request.post.get('user')

pwd = request.post.get('pwd')

ret = models.userprofile.objects.filter(username=user, password=my_md5(user, pwd), is_active=true).first()

# ret = models.userprofile.objects.filter(username=user, password=pwd, is_active=true).values()

print(ret)

if ret:

return_url = request.get.get('return_url')

request.session['user_pk'] = ret.pk

if return_url:

return redirect(return_url)

return redirect(reverse('show:public_customer'))

else:

err = '賬號或密碼錯誤!'

return render(request, 'login.html', )

中介軟體中

# 白名單

w_list = ['/login/', '/reg/', '/verification_username/']

# 黑名單

b_list =

def process_request(self, request):

# 獲取請求的路徑

return_url = request.path_info

# 判斷 白名單

# 獲取session 的值

user_pk = request.session.get("user_pk")

# 判斷是否有session

if user_pk:

# session 儲存的是 使用者的id 通過id 獲取物件

user = models.userprofile.objects.filter(pk=user_pk).first()

# 將物件儲存到 request 中 用於儲存使用者

request.user_object = user

return

通過session id恢復session內容

開啟session session start 取得 session test 111222333 session id session id echo session id exit fu1dmdnrk0o2pi612b8jh9kts1 根據session id查詢session資訊 sessio...

通過session id實現session共享

session 在計算機中,尤其是在網路應用中,稱為 會話 首先,多伺服器共享session問題,這個大家應該都能夠理解的,當乙個 的使用者量過大,就會使用伺服器集群,例如專門有乙個登入用的伺服器。使用者通 過登入伺服器登入之後,登入伺服器儲存了使用者的登入資訊session,而其他受訪問的伺服器,...

Django中session和cookie的用法

session 存在伺服器端,用request物件進行設定 設定session 在後端寫入 request.session money 100 缺省會在cookie中產生乙個sessionid 獲取session值 只能在後端獲取 print request.session.get money co...