Пример #1
0
def callback():
    i = web.input()
    code = i.get("code", None)
    if code:
        # /callback?code=xxx
        client = APIClient(app_key=APP_KEY, app_secret=APP_SECRET)
        token = client.request_access_token(code, _CALLBACK_URL)
        logging.info("got access token: %s" % str(token))
        uid = token.uid
        kw = dict(access_token=token.access_token, expires_in=token.expires_in)
        # check for update:
        if 0 == db.update("user", where="uid=$uid", vars=dict(uid=uid), **kw):
            # create user:
            client.set_access_token(token.access_token, token.expires_in)
            user = client.get.users__show(uid=uid)
            kw["uid"] = uid
            kw["name"] = user.screen_name
            kw["gender"] = user.gender
            kw["province_code"] = user.province
            kw["city_code"] = user.city
            kw["image_url"] = user.profile_image_url
            db.insert("user", **kw)
        # make a cookie:
        web.setcookie("weibouser", _make_cookie(uid, token.access_token), int(token.expires_in - time.time()))
        raise web.found("/index")
Пример #2
0
 def save_access_token_to_db(self, uid, token, secret):
     kw = dict(oauth_token=token, oauth_token_secret=secret, join_time=str(datetime.now()))
     # check for update:
     if 0==db.update('account_info', where='user_id=$user_id', vars=dict(user_id=uid), **kw):
         db.insert('account_info', user_id=uid, oauth_token=token, oauth_token_secret=secret)
Пример #3
0
def add_city():
    i = web.input()
    db.insert("city", name=i.name, alias=i.alias, yahoo_code=i.yahoo_code, weibo_code=i.weibo_code)
    raise web.found("/list_city")