皆さんは、Box APIを活用していますでしょうか。
Box APIを使うことで、Boxサイト上のデータの管理を効率的に行うことができます。
前回、Javaを使ったBoxAPIの使い方をご紹介しました。
第2弾である本記事では、C#の次世代.NET SDKの使い方をご紹介します。
目次
デモ用に、Boxアプリを作成します。今回はOAuth 2.0の認証方法を使ったやり方を説明します。
アプリ名:sciencepark_test2
説明(省略可):詳解BoxAPIを使うまで2(次世代.NET編)
目的:その他
目的を入力:demo
本記事では以下の環境でBox SDKを使用してBoxAPIを実行します。
No. | 項目名 | バージョン | 備考 |
1 | Visual Studio | 2022 | 統合開発環境 |
2 | .NET | 8 | アプリケーション開発・実行環境 |
3 | Box.Sdk.Gen | 1.4.0 | 次世代.NET用BoxSDK |
開発環境が整いましたので、実際のコーディングについて説明します。
25行目のコンストラクタでは、遷移するBoxサイトのURLを受け取るauthorizeUrlとOAuth 2.0リダイレクトURIを受け取る引数を追加します。
28行目のところで、WebView2でBoxサイトのURLを表示するようにしています。
32行目からは、NavigationStartingのイベントとなります。
ここで、BoxサイトからOAuth 2.0リダイレクトURIに対して、承認コードが送られてきます。41行目ではコードを受け取ってアプリ内部で保持しています。
承認コードは、30秒後に有効期限が切れるので、ご注意ください。
30行目では、開発コンソールで作成したクライアントIDとクライアントシークレットが必要になりますので、そちらを入力してください。
31行目と32行目では、開発コンソールで設定したリダイレクトURIを入力してください。
33行目で、Boxのログイン画面を表示します。
成功すると、36~37行目でアクセストークンを取得し、Box APIを使用できるようになります。BoxClientのインスタンスを使って、Box APIを呼び出してみましょう。
※2段階認証を有効にしている場合、本画面の前に2段階認証で設定した認証を行う必要が有るのでご注意ください。
準備が整ったのでBoxAPIを呼んでみましょう。
今回は、以下のAPIを使ってBoxアカウントにあるファイルを列挙してみます。
https://ja.developer.box.com/reference/get-folders-id-items
https://ja.developer.box.com/reference/get-files-id
実際に上記2つのAPIを使った関数を以下に書いてみます。
このように、指定したBoxフォルダ配下にあるファイルを全て列挙することが可能となります。
これでBox上にあるファイルの管理もしやすくなるのではないでしょうか。
Box API開発でお困りごとがあれば、是非弊社にご相談ください。