Change jsapi signature params use pywe-jssdk

Brightcells vor 7 Jahren
Ursprung
Commit
5e11d315d4
2 geänderte Dateien mit 3 neuen Zeilen und 19 gelöschten Zeilen
  1. 1 1
      requirements.txt
  2. 2 18
      wechat/views.py

+ 1 - 1
requirements.txt

@@ -26,6 +26,7 @@ jsonfield==2.0.2
26 26
 mock==2.0.0
27 27
 pep8==1.7.0
28 28
 pysnippets==1.0.4
29
+pywe-jssdk==1.0.0
29 30
 pywe-miniapp==1.0.0
30 31
 pywe-oauth==1.0.3
31 32
 pywe-pay==1.0.5
@@ -37,4 +38,3 @@ rlog==0.2
37 38
 shortuuid==0.5.0
38 39
 uWSGI==2.0.15
39 40
 versions==0.10.0
40
-wechatpy==1.2.8

+ 2 - 18
wechat/views.py

@@ -1,14 +1,11 @@
1 1
 # -*- coding: utf-8 -*-
2 2
 
3
-import time
4
-
5
-import shortuuid
6 3
 from django.conf import settings
7 4
 from django.shortcuts import redirect
8 5
 from furl import furl
9 6
 from json_response import auto_response
7
+from pywe_jssdk import jsapi_signature_params
10 8
 from pywe_oauth import get_access_info, get_oauth_code_url, get_userinfo
11
-from wechatpy import WeChatClient
12 9
 
13 10
 
14 11
 JSAPI = settings.WECHAT.get('JSAPI', {})
@@ -54,17 +51,4 @@ def userinfo_redirect(request):
54 51
 
55 52
 @auto_response
56 53
 def wx_jsapi_signature_api(request):
57
-    url = request.GET.get('url', '')
58
-
59
-    nonceStr, timestamp = shortuuid.uuid(), int(time.time())
60
-
61
-    client = WeChatClient(JSAPI['appID'], JSAPI['appsecret'])
62
-    ticket = client.jsapi.get_jsapi_ticket()
63
-    signature = client.jsapi.get_jsapi_signature(nonceStr, ticket, timestamp, url)
64
-
65
-    return {
66
-        'appId': JSAPI['appID'],
67
-        'nonceStr': nonceStr,
68
-        'timestamp': timestamp,
69
-        'signature': signature,
70
-    }
54
+    return jsapi_signature_params(JSAPI['appID'], JSAPI['appsecret'], request.GET.get('url', ''))