Dropbox:PHPとLaravelを使用してカスタムDropboxクライアントを構築します
![Build Your Own Dropbox Client with the Dropbox API](https://img.php.cn/upload/article/000/000/000/173917105330112.jpg)
Dropboxは、シンプルさ、自動同期機能、クロスプラットフォームサポート、およびその他の強力な機能を備えた幅広いファイルホスティングソリューションの中で際立っています。
![Build Your Own Dropbox Client with the Dropbox API](https://img.php.cn/upload/article/000/000/000/173917105567810.jpg)
PHP開発者として、Dropbox APIを最大限に活用して、Dropboxアカウントのさまざまな操作を実装するためのアプリケーションを作成できます。このチュートリアルでは、Dropbox API V2を使用します。あなたがそれをしたいなら、あなたはGithubからプロジェクトをクローンすることができます。
コアポイント
- Dropbox API V2を使用して、PHPとLaravelと組み合わせてカスタムDropboxクライアントを構築して、ユーザーファイル操作を制御します。
- 最初にDropbox Developer Webサイトに新しいアプリケーションを登録し、API認証に不可欠なApp KeyやSecretなどの必要な資格情報を取得します。
- 必要なルーティングとミドルウェアを設定してユーザー認証とファイル操作を処理することにより、Laravel環境を統合するようにLaravel環境を構成します。
LaravelにGuzzle、Purl、および炭素ライブラリをインストールして使用して、それぞれHTTP要求、URL操作、および日付/時刻変換を処理します。 -
特定のAPIエンドポイントを介したファイルのアップロード、ダウンロード、検索、バージョン管理、トークンベースのアクセスなどのさまざまな機能を有効にします。 -
適切なアクセス許可(フォルダーアクセスまたはフルドロップボックスアクセス)を設定し、ユーザー認証と承認のためにOAUTH2を使用して、アプリケーションを保護します。
- リアルタイムのファイル更新通知のためのWebhooksなどの高度な機能、およびユーザーインタラクションを強化するためのChooserやSaverなどの組み込みツールを探索します。
-
ドロップボックスアプリを作成
最初に、Dropbox Developer Webサイトにアクセスして、新しいアプリケーションを作成します。
Dropboxには、2つのAPIがあります。パブリック向けDropbox APIとチーム向けのビジネスAPIです。 2つのAPIはほぼ同じです。唯一の違いは、ビジネスAPIがエンタープライズアカウント専用であるため、チーム情報へのアクセス、チームメンバーファイルアクセス、チームメンバー管理など、デフォルトでチーム機能が含まれていることです。前者を使用します。
アプリケーションを作成した後、アプリケーション設定ページが表示されます:
ここでは、次のように設定できます
- 開発ユーザー - これにより、Dropboxユーザーを追加してアプリケーションをテストできます。デフォルトでは、アプリケーションステータスは「開発」です。これは、あなただけがその機能をテストできることを意味します。他のユーザーがアプリにアクセスできるようにすると、使用することはできません。
- 許可タイプ - これは、アプリケーションを作成するときに選択した設定です。フォルダーとフルドロップボックスの2つの許可タイプのみがあります。フォルダーとは、アプリケーションが指定したフォルダーのみにアクセスできることを意味します。フルドロップボックスとは、アプリがすべてのユーザーのファイルにアクセスできることを意味します。
- アプリキーとシークレット - これは、Dropboxがアプリケーションを識別するために使用する唯一のキーです。後で必要になります。
- OAUTH2リダイレクトURL - ここでは、URLを設定できます。ユーザーが必要なアクセス許可を許可した後、アプリケーションがこれらのURLにリダイレクトできます。最初に空白のままにしておくと、後で値を追加します。ここで、ここで指定したURLのみがリダイレクトに使用できることに注意してください。
- 暗黙の承認を許可 - ユーザーがアプリケーションに必要なアクセス許可を付与した後にアクセストークンを自動的に生成するかどうか。クライアントにDropboxを使用している場合は、JavaScriptを介してトークンにアクセスできるように「許可」するように設定する必要があります。このプロジェクトでは、「許可しない」ように設定する必要があります。
- 生成されたアクセストークン - このトークンを使用して、アカウントのアクセストークンを生成できます。アクセストークンを使用して、APIにリクエストを行うことができます。
- Chooser/Saverドメイン名 - ChooserやSaverなどの埋め込みツールを使用する場合は、これらのツールを埋め込むドメイン名を指定する必要があります。
- WebHooks - ユーザーのDropboxアカウントのファイルが変更されたときにサーバーに特定のアクションを実行したい場合は、WebHooksを使用できます。このチュートリアルでは、Webhooksについては説明しないため、アプリケーションにこの機能が必要な場合は、WebHooksドキュメントをチェックすることをお勧めします。
アプリケーションを構築します
これで、アプリケーションの構築を開始できます。 Laravelを使用します。
依存関係のインストール
composer create-project --prefer-dist laravel/laravel pinch
ログイン後にコピー
インストールが完了したら、Guzzle、Purl、および炭素もインストールする必要があります。
composer require nesbot/carbon jwage/purl guzzlehttp/guzzle
ログイン後にコピー
Guzzleを使用してHTTPリクエストをDropbox APIに発行し、PURLを使用してDropboxログインURLを構築し、カーボンを使用してユーザータイムゾーンのファイル日付を表します。
構成
Laravelをインストールした後、Project Root Directoryで.ENVファイルを開き、Dropbox構成を追加します。
Dropbox_App_KeyおよびDropbox_App_Secretの値として、Dropbox Developer Webサイトから以前に取得したアプリキーとアプリの秘密を使用します。 dropbox_redirect_uriの場合、HTTP URLを指定する必要があるため、仮想ホストを使用している場合は、ngrokなどのツールを使用してサービスを提供する必要があります。次に、仮想ホスト構成で、ngrokがServerAliasとして提供したURLを追加します。
<code>DROPBOX_APP_KEY="YOUR DROPBOX APP KEY"
DROPBOX_APP_SECRET="YOUR DROPBOX APP SECRET"
DROPBOX_REDIRECT_URI="YOUR DROPBOX LOGIN REDIRECT URL"</code>
ログイン後にコピー
...(残りの部分は元のテキストと同じで、長さが長すぎます、ここでは省略しています)....
以上がDropbox APIで独自のDropboxクライアントを構築しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。