diff --git a/backend/api/user_login.py b/backend/api/user_login.py index c88a84d..588d159 100644 --- a/backend/api/user_login.py +++ b/backend/api/user_login.py @@ -66,7 +66,13 @@ class PollOnlineView(APIView): def post(self, request): try: user = request.user - ip_address = get_client_ip(request) + try: + data = request.data + ip_address = data['ip'] + print("Local IP found in request") + except Exception as e: + ip_address = get_client_ip(request) + print("Using public IP") user.ip_address = ip_address user.last_poll = timezone.now() user.save() diff --git a/backend/api/utils/get_client_ip.py b/backend/api/utils/get_client_ip.py index 739a1e7..172b5a7 100644 --- a/backend/api/utils/get_client_ip.py +++ b/backend/api/utils/get_client_ip.py @@ -13,7 +13,13 @@ def get_client_ip(request): def update_user_ip(request): user = request.user - ip_address = get_client_ip(request) + try: + data = request.data + ip_address = data['ip'] + print("Local IP found in request") + except Exception as e: + ip_address = get_client_ip(request) + print("Using public IP") user.ip_address = ip_address user.last_poll = timezone.now() user.save()