Apabila menggunakan pengesahan berdasarkan cookies
, tulis Permission
class IsAuthenticatedAndStudentOwner(BasePermission):
message = 'You must be a student.'
def has_permission(self, request, view):
return request.user.is_authenticated() and smart_str(request.user.identity) == '学生'
def has_object_permission(self, request, view, obj):
return obj.student.user == request.user
Apabila saya menggunakan jwt
untuk mengesahkan, log masuk mengembalikan token
tanpa menjalankan login(request, user)
, iaitu request.user
ialah AnonymousUser
.
# login(request, user_obj)
payload = jwt_payload_handler(user_obj)
token = jwt_encode_handler(payload)
data['token'] = token
return data
Jadi bagaimana saya harus mengubah suai ini Permission
? Tolong bantu.
jwt
的验证,你是通过header
ORcookie
的方式传递的?define another method in class
IsAuthenticatedAndStudentOwner
Anda juga boleh membukanya menggunakan jwt
login(request, user_obj)
ahPengguna bahagian belakang masih wujud dalam permintaan, tetapi apabila menggunakan jwt, templat django tidak lagi digunakan, dan pengguna tidak boleh digunakan secara bebas dalam halaman
Saya akan menulis ini tidak lama lagi, sila teruskan perhatian kepada pertukaran