mirror of https://github.com/jumpserver/jumpserver
Merge pull request #4139 from jumpserver/dev_session
[Update] UserProfileAPI 判断是否设置session过期时间,解决前端关闭浏览器session未失效的问题pull/4142/head
commit
d7e432a851
|
@ -3,6 +3,7 @@ import uuid
|
||||||
|
|
||||||
from rest_framework import generics
|
from rest_framework import generics
|
||||||
from rest_framework.permissions import IsAuthenticated
|
from rest_framework.permissions import IsAuthenticated
|
||||||
|
from django.conf import settings
|
||||||
|
|
||||||
from common.permissions import (
|
from common.permissions import (
|
||||||
IsCurrentUserOrReadOnly
|
IsCurrentUserOrReadOnly
|
||||||
|
@ -64,8 +65,9 @@ class UserProfileApi(generics.RetrieveUpdateAPIView):
|
||||||
return self.request.user
|
return self.request.user
|
||||||
|
|
||||||
def retrieve(self, request, *args, **kwargs):
|
def retrieve(self, request, *args, **kwargs):
|
||||||
age = request.session.get_expiry_age()
|
if not settings.SESSION_EXPIRE_AT_BROWSER_CLOSE:
|
||||||
request.session.set_expiry(age)
|
age = request.session.get_expiry_age()
|
||||||
|
request.session.set_expiry(age)
|
||||||
return super().retrieve(request, *args, **kwargs)
|
return super().retrieve(request, *args, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue