示例#1
0
 def check_valid(self):
     '''
     检查配置是否有效
     '''
     is_valid = WechatUserInfoManager(appid=self.appid,\
         secret=self.secret).check_valid()
     return is_valid
示例#2
0
文件: qr.py 项目: weijie199148/arkid
 def post(self, request):
     '''
     处理微信用户扫码之后重定向页面
     '''
     code = request.data.get('code')
     appid = WechatConfig.get_current().appid
     secret = WechatConfig.get_current().secret
     if code:
         try:
             unionid = WechatUserInfoManager(appid=appid, secret=secret).get_union_id(code)
         except APICallError:
             raise ValidationError({'code': ['invalid']})
     else:
         raise ValidationError({'code': ['required']})
     context = self.get_token(unionid)
     return Response(context, HTTP_200_OK)
示例#3
0
    def get(self, request):
        '''
        处理微信用户扫码之后重定向页面
        '''
        code = request.GET.get('code')
        redirect_url = request.GET.get('redirect_url', None)
        appid = WechatConfig.get_current().appid
        secret = WechatConfig.get_current().secret
        if code:
            try:
                unionid = WechatUserInfoManager(appid=appid, secret=secret).get_union_id(code)
            except APICallError:
                raise ValidationError({'code': ['invalid']})
        else:
            raise ValidationError({'code': ['required']})

        context = self.get_token(unionid)
        if redirect_url:
            query_string = urlencode(context)
            return HttpResponseRedirect(f'{redirect_url}?{query_string}')
        return Response(context, HTTP_200_OK)