from rest_framework import serializers class OnlineClassTokenCreateSerializer(serializers.Serializer): redirect_path = serializers.CharField(required=False) def validate_redirect_path(self, value: str) -> str: value = value.strip() if value and value.startswith("http"): raise serializers.ValidationError("Redirect path must be relative to the frontend domain.") return value class OnlineClassTokenVerifySerializer(serializers.Serializer): token = serializers.CharField(max_length=128) def validate_token(self, value: str) -> str: value = value.strip() if not value: raise serializers.ValidationError("Token is required.") return value