diff --git a/app_api/views.py b/app_api/views.py index 67f0736..e18b580 100644 --- a/app_api/views.py +++ b/app_api/views.py @@ -38,19 +38,19 @@ def oauth0(request): # 1 、验证timestamp的时效性 nowtime = int (time.time()) # 时间戳失效时间,默认为3600,可以改短,如30,严格点5秒,如果使用5秒,请求前,需要通过get_timestamp获取服务器时间戳,否则因为和服务器时间差导致无法验证通过 - if (nowtime - int(timestamp)) > 3600 : - raise ValueError('链接已失效,请从合法路径访问,或联系管理员!') + if (nowtime - int(timestamp)) > 3600 : + return JsonResponse({'status':False,'data':nowtime,'errormsg':"out of time"}) # 2、获取userid的Token user = User.objects.get(username=username) if user is None: - raise ValueError('请求用户出错!') + return JsonResponse({'status':False,'data':nowtime,'errormsg':'user error!'}) ID = user.id State = user.is_active if State == 1 and ID is not None: usertoken = UserToken.objects.get(user_id=ID) token = usertoken.token else: - raise ValueError('非法用户!') + return JsonResponse({'status':False,'data':nowtime,'errormsg':'user deny!'}) # 3、 验证hash的正确性 final_str = str(randstr) + str(timestamp) + str(username) + token @@ -61,16 +61,12 @@ def oauth0(request): from urllib.parse import unquote newurl = unquote(redirecturl) return redirect(newurl) - else: - raise ValueError('验证失败,可能是用户名或Token不正确!详情请联系管理员!') + else: + return JsonResponse({'status':False,'data':nowtime,'errmsg':'hash error!'}) else: - raise ValueError('关键字验证失败,请联系管理员!部分关键字为空') - except ValueError as e: - errormsg = e - return render(request, 'app_api/api404.html', locals()) + return JsonResponse({'status':False,'data':'Some keywords is empty!'}) except : - errormsg = "API接口运行出错!" - return render(request, 'app_api/api404.html', locals()) + return JsonResponse({'status':False,'data':'Something wrong here!!'}) else: return JsonResponse({'status':False,'data':'Nothing Here'}) diff --git a/template/app_api/api404.html b/template/app_api/api404.html deleted file mode 100644 index 6848696..0000000 --- a/template/app_api/api404.html +++ /dev/null @@ -1,26 +0,0 @@ -{% load static %} -{% load i18n %} - - -
- -