def syn_login(self,uid): ''' 同步登录 @param uid ''' #检查是否允许 if settings.API_SYNLOGIN: #获取对应用户 try: user=User.objects.extra(where=['reference_id=%s'],params=[uid])[0] username=user.username except: username='' # from django.contrib.auth import login,get_backends # backend=get_backends()[0] # user.backend = "%s.%s" % (backend.__module__, backend.__class__.__name__) # login(self.request,user) resp=HttpResponse() resp['P3P: CP']='CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR' value=Discuz.discuzAuthcodeEncode('%s,%s' % (uid,username), settings.API_KEY) resp.set_cookie(settings.UC_COOKIE_KEY, value, 86400*365,86400*365) return resp return HttpResponse(settings.API_RETURN_FORBIDDEN)
def uc_api_input(self,data): postdata =("%s&agent=%s&time=%s" % (data, Discuz.MD5(self.request.META["HTTP_USER_AGENT"]), Discuz.unixTimestamp())) postdata = Discuz.discuzAuthcodeEncode(postdata, settings.API_KEY); return postdata