| @@ -4,6 +4,7 @@ from curtail_uuid import CurtailUUID | ||
| 4 | 4 | from django.contrib.auth.hashers import check_password, make_password | 
| 5 | 5 | from django.contrib.auth.models import Group, User | 
| 6 | 6 | from django.db import transaction | 
| 7 | +from ipaddr import client_ip | |
| 7 | 8 | from logit import logit | 
| 8 | 9 | from rest_framework import viewsets | 
| 9 | 10 | from TimeConvert import TimeConvert as tc | 
| @@ -13,7 +14,6 @@ from account.serializers import GroupSerializer, LensmanInfoSerializer, UserInfo | ||
| 13 | 14 | from operation.models import GuestEntranceControlInfo | 
| 14 | 15 | from utils.error.errno_utils import LensmanStatusCode, UserStatusCode | 
| 15 | 16 | from utils.error.response_utils import response | 
| 16 | -from utils.ip_utils import get_client_ip | |
| 17 | 17 | from utils.redis.rguest import get_guest_entrance_control | 
| 18 | 18 | from utils.redis.rprofile import set_profile_info | 
| 19 | 19 | from utils.version_utils import is_version_match | 
| @@ -56,7 +56,7 @@ def user_signup_api(request): | ||
| 56 | 56 | return response(UserStatusCode.USERNAME_HAS_REGISTERED) | 
| 57 | 57 |  | 
| 58 | 58 | # 判断 user_id 是否存在并且为分配用户,如果存在并且为分配用户,则直接在该帐户上更新,否则则直接创建帐户 | 
| 59 | - signup_ip, signup_at = get_client_ip(request), tc.utc_datetime() | |
| 59 | + signup_ip, signup_at = client_ip(request), tc.utc_datetime() | |
| 60 | 60 |  | 
| 61 | 61 | try: | 
| 62 | 62 | user = UserInfo.objects.select_for_update().get(user_id=user_id) | 
| @@ -96,7 +96,7 @@ def user_login_api(request): | ||
| 96 | 96 | except UserInfo.DoesNotExist: | 
| 97 | 97 | return response(UserStatusCode.USER_NOT_FOUND) | 
| 98 | 98 |  | 
| 99 | - login_ip, login_at = get_client_ip(request), tc.utc_datetime() | |
| 99 | + login_ip, login_at = client_ip(request), tc.utc_datetime() | |
| 100 | 100 |  | 
| 101 | 101 | if not check_password(password, user.password): | 
| 102 | 102 | UserLoginLogInfo.objects.create( | 
| @@ -156,7 +156,7 @@ def user_wx_authorize_api(request): | ||
| 156 | 156 | # unionid 不存在 | 
| 157 | 157 | # 判断 user_id 是否存在并且为分配用户,如果存在并且为分配用户,则直接在该帐户上更新,否则则直接创建帐户 | 
| 158 | 158 |  | 
| 159 | - signup_ip, signup_at = get_client_ip(request), tc.utc_datetime() | |
| 159 | + signup_ip, signup_at = client_ip(request), tc.utc_datetime() | |
| 160 | 160 |  | 
| 161 | 161 | try: | 
| 162 | 162 | user = UserInfo.objects.select_for_update().get(user_id=user_id) | 
| @@ -8,6 +8,7 @@ from django.conf import settings | ||
| 8 | 8 | from django.db import transaction | 
| 9 | 9 | from django.shortcuts import render | 
| 10 | 10 | from django_q.tasks import async | 
| 11 | +from ipaddr import client_ip | |
| 11 | 12 | from logit import logit | 
| 12 | 13 | from rest_framework import viewsets | 
| 13 | 14 | from TimeConvert import TimeConvert as tc | 
| @@ -18,7 +19,6 @@ from photo.models import PhotosInfo | ||
| 18 | 19 | from photo.serializers import PhotosInfoSerializer | 
| 19 | 20 | from utils.error.errno_utils import LensmanStatusCode, PhotoStatusCode | 
| 20 | 21 | from utils.error.response_utils import response | 
| 21 | -from utils.ip_utils import get_client_ip | |
| 22 | 22 | from utils.redis.connect import r | 
| 23 | 23 | from utils.redis.rgroup import get_group_info, set_group_info, set_group_users_info | 
| 24 | 24 | from utils.redis.rkeys import (GROUP_LAST_PHOTO_PK, GROUP_USERS_DELETED_SET, GROUP_USERS_PASSED_SET, | 
| @@ -123,7 +123,7 @@ def session_join_api(request): | ||
| 123 | 123 |      user, user_created = UserInfo.objects.get_or_create(user_id=user_id, defaults={ | 
| 124 | 124 | 'user_id': CurtailUUID.uuid(UserInfo, 'user_id'), | 
| 125 | 125 | 'user_status': UserInfo.ASSIGN, | 
| 126 | - 'assign_ip': get_client_ip(request), | |
| 126 | + 'assign_ip': client_ip(request), | |
| 127 | 127 | 'assign_at': tc.utc_datetime(), | 
| 128 | 128 | }) | 
| 129 | 129 | user_id = user.user_id | 
| @@ -9,6 +9,7 @@ TimeConvert==1.3.12 | ||
| 9 | 9 | cryptography==1.5.2 | 
| 10 | 10 | django-curtail-uuid==1.0.0 | 
| 11 | 11 | django-detect==1.0.5 | 
| 12 | +django-ip==1.0.0 | |
| 12 | 13 | django-json-response==1.1.4 | 
| 13 | 14 | django-logit==1.0.6 | 
| 14 | 15 | django-multidomain==1.1.4 | 
| @@ -1,10 +0,0 @@ | ||
| 1 | -# -*- coding: utf-8 -*- | |
| 2 | - | |
| 3 | - | |
| 4 | -def get_client_ip(request): | |
| 5 | -    x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR') | |
| 6 | - if x_forwarded_for: | |
| 7 | -        ip = x_forwarded_for.split(',')[0] | |
| 8 | - else: | |
| 9 | -        ip = request.META.get('REMOTE_ADDR') | |
| 10 | - return ip |