Dropbox Python SDK にプロキシセッションを渡す
Dropbox SDK の公開 create_session プロキシオプションを使い、得られたセッションをそのクライアントに渡します。
Dropbox Python SDK は設定済みの HTTP セッションを受け入れます。公開ヘルパー create_session には proxies パラメーターがあります:
import dropbox
session = dropbox.create_session(proxies={
'https': 'http://proxy.example:8080',
})
client = dropbox.Dropbox(access_token, session=session)SDK のヘルパーは、SDK の接続プール設定を持つ Requests セッションを返します。そのオブジェクトを Dropbox に渡すとクライアントの API トランスポートに接続されます。dropbox/rest.py を編集したり、非公開の pool-manager クラスを置き換えたりする必要はありません。
辞書のキーは HTTPS の宛先を選択します。HTTP URL はこのサンプルプロキシのリスナーを表します。アプリケーションの通常の access token はクライアントのコンストラクターから別途渡してください。HTTP プロキシ一覧は、プロキシ認証なしで許可された公開 Dropbox API ルートに使えるエンドポイント候補を提供しますが、その access token は提供しません。
Requests の環境マージはセッションにも引き続き適用されます。アプリケーションが経路全体を意図的に所有する場合は、session.trust_env を false に設定し、環境依存の信頼設定を明示的に指定してください。そうでなければ、デプロイに必要な環境の動作を維持します。
このヘルパーは、選択した CA バンドル用の ca_certs も受け付けます。セッションの構築を 1 か所にまとめ、得られたクライアントを本来の操作に再利用して、メタデータ要求とファイル転送要求が同じ設定済みトランスポートを共有するようにします。