0

我在 web2py 中使用 Dropbox 会话时遇到了困难。这是我的默认控制器,有两种方法:

def index():
    APP_KEY = 'XXXXXXXXXXX'
    APP_SECRET = 'XXXXXXXXXXX'
    ACCESS_TYPE = 'dropbox'
    sess = dropbox.session.DropboxSession(APP_KEY, APP_SECRET, ACCESS_TYPE)
    request_token = sess.obtain_request_token()
    url = sess.build_authorize_url(request_token, "http://localhost:8000/dropbox/default/welcome")
    redirect(url)

def welcome():
    ## How do I get the session object here??
    access_token = sess.obtain_access_token(request_token)
    client = dropbox.client.DropboxClient(sess)
    return dict(message=T("Welcome user!" + client.account_info()))

我尝试过使用 current.session,也尝试过缓存会话,但它对我不起作用。

有人可以就如何在索引方法中保存保管箱会话并能够在其他方法/控制器中使用它提供一些帮助。代码示例将不胜感激。

谢谢你。

4

1 回答 1

0

您可以在模型中放置这样的东西(未经测试),因此 dropbox_session 将可用于所有控制器......

def __make_dropbox_connection():
    sess = dropbox.session.DropboxSession(APP_KEY, APP_SECRET, ACCESS_TYPE)

    print("DROPBOX Connection established ...")
    return sess

##
dropbox_sess = cache.ram('dropbox',__make_dropbox_connection,None)
于 2013-03-28T06:29:32.733 回答