0

web2py でドロップボックス セッションを使用するのに問題があります。これが私のデフォルトのコントローラーで、2 つのメソッドがあります。

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 に答える