feat: 增加人脸识别超时控制

pull/14490/head
Aaron3S 2024-11-19 19:30:31 +08:00 committed by Bryan
parent cfadbc164c
commit f92c557235
2 changed files with 9 additions and 1 deletions

View File

@ -226,12 +226,20 @@ class MFAFaceMixin:
def is_context_finished(context):
return context.get('is_finished', False)
@staticmethod
def is_context_success(context):
return context.get('success', False)
def get_face_code(self):
context = self.get_face_recognition_context()
if not self.is_context_finished(context):
raise RuntimeError("Face recognition is not yet completed.")
if not self.is_context_success(context):
msg = context.get('error_message', '')
raise RuntimeError("Face recognition failed,{}".format(msg))
face_code = context.get('face_code')
if not face_code:
raise ValueError("Face code is missing from the context.")

View File

@ -58,7 +58,7 @@ class MFAFaceCallbackSerializer(serializers.Serializer):
token = serializers.CharField(required=True, allow_blank=False)
success = serializers.BooleanField(required=True, allow_null=False)
error_message = serializers.CharField(required=False, allow_null=True, allow_blank=True)
face_code = serializers.CharField(required=True)
face_code = serializers.CharField(required=False, allow_null=True, allow_blank=True)
def update(self, instance, validated_data):
pass