def connect(provider): if provider == "renren": return "人人的api因为备案问题尚未审核通过,请先绑定其他平台吧,比如豆瓣:)" #return "thepast.me 正在升级硬件,暂时不提供登录、注册功能,请谅解,有问题请邮件到 [email protected]" client = None if provider == config.OPENID_DOUBAN: client = Douban() elif provider == config.OPENID_SINA: client = SinaWeibo() elif provider == config.OPENID_TWITTER: client = TwitterOAuth1() elif provider == config.OPENID_QQ: client = QQWeibo() elif provider == config.OPENID_RENREN: client = Renren() elif provider == config.OPENID_INSTAGRAM: client = Instagram() if not client: abort(400, "不支持该第三方登录") try: login_uri = client.login() except OAuthError, e: log.warning(e) abort(400, "抱歉,跳转到第三方失败,请重新尝试一下:)")
def connect(provider): if provider == "renren": return "我已经实在受不了人人,被人人的管理员快搞死了,怎么修改都不通过,唉... 有兴趣可以看看这边豆瓣网友的帖子:http://www.douban.com/note/250372684/" #return "thepast.me 正在升级硬件,暂时不提供登录、注册功能,请谅解,有问题请邮件到 [email protected]" client = None if provider == config.OPENID_DOUBAN: client = Douban() elif provider == config.OPENID_SINA: client = SinaWeibo() elif provider == config.OPENID_TWITTER: client = TwitterOAuth1() elif provider == config.OPENID_QQ: client = QQWeibo() elif provider == config.OPENID_RENREN: client = Renren() elif provider == config.OPENID_INSTAGRAM: client = Instagram() if not client: abort(400, "不支持该第三方登录") try: login_uri = client.login() except OAuthError, e: log.warning(e) abort(400, "抱歉,跳转到第三方失败,请重新尝试一下:)")
def _qqweibo_callback(request): openid_type = config.OPENID_TYPE_DICT[config.OPENID_QQ] client = QQWeibo() ## from qqweibo token = request.args.get("oauth_token") verifier = request.args.get("oauth_verifier") ## from session token_secret_pair = client.get_request_token_from_session(session) if token == token_secret_pair['key']: client.set_token(token, token_secret_pair['secret']) ## get access_token from qq token, token_secret = client.get_access_token(verifier) user = client.get_user_info() token_dict = {} token_dict['access_token'] = token #TODO:这里refresh_token其实就是access_token_secret token_dict['refresh_token'] = token_secret user = _save_user_and_token(token_dict, user, openid_type) return user