You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
flyapps/fir_ser/api/views/receiveudids.py

41 lines
1.6 KiB

4 years ago
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# project: 3月
# author: liuyu
# date: 2020/3/6
4 years ago
from api.utils.app.supersignutils import udid_bytes_to_dict, get_redirect_server_domain, IosUtils
from api.models import Apps, AppUDID
4 years ago
from django.views import View
from django.http import HttpResponsePermanentRedirect
import logging
logger = logging.getLogger(__file__)
4 years ago
4 years ago
class IosUDIDView(View):
4 years ago
def post(self, request, short):
4 years ago
stream_f = str(request.body)
format_udid_info = udid_bytes_to_dict(stream_f)
logger.info("short %s get new udid %s" % (short, format_udid_info))
4 years ago
server_domain = get_redirect_server_domain(request)
4 years ago
try:
4 years ago
app_info = Apps.objects.filter(short=short).first()
4 years ago
4 years ago
if app_info:
if app_info.issupersign and app_info.user_id.supersign_active:
4 years ago
AppUDID.objects.update_or_create(app_id=app_info, udid=format_udid_info.get('udid'),
defaults=format_udid_info)
4 years ago
ios_obj = IosUtils(format_udid_info, app_info.user_id, app_info)
4 years ago
ios_obj.resign()
else:
4 years ago
return HttpResponsePermanentRedirect(
"%s/%s" % (server_domain, short))
4 years ago
else:
4 years ago
return HttpResponsePermanentRedirect(
"%s/%s" % (server_domain, short))
4 years ago
except Exception as e:
logger.error("short %s receive udid Exception:%s" % (short, e))
4 years ago
return HttpResponsePermanentRedirect("%s/%s?udid=%s" % (server_domain, short, format_udid_info.get("udid")))