SharePointに対して、これまでCSOMやPowerShellのPnPコマンド等を使っていましたがRestAPIは使ったことがなかったので今回はそれを実際に触ってみます。対象はSharePointOnlineとします
また、今回はアクセストークンを使わないやり方で実装しています
おおもとになるコード
この実装方法だとアクセストークンの設定やGraphAPIの追加といった作業することなく実施できます
SharePointOnlineCredentials credential = new SharePointOnlineCredentials(user, passWord);
using (var handler = new HttpClientHandler() { Credentials = credential })
{
Uri uri = new Uri(webUrl);
handler.CookieContainer.SetCookies(uri, credential.GetAuthenticationCookie(uri));
using (var client = new HttpClient(handler))
{
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = await client.GetAsync(string.Format(restURL, webUrl, listName)).ConfigureAwait(false);
response.EnsureSuccessStatusCode();
jsonData = await response.Content.ReadAsStringAsync();
}
}
サイト情報の取得
・サイト内のリスト一覧
string restURL = "{0}_api/web/lists";
・サイト内のリストのアイテム数の一覧
string restURL = "{0}_api/web/lists?$select=Title,ItemCount";
リスト情報の取得
・上位20件を取得
string restURL = "{0}_api/web/lists/GetByTitle('{1}')/items?$top=20";
・上位20件を取得し、プロパティはタイトルのみ取得
string restURL = "{0}/_api/web/lists/GetByTitle('{1}')/items?$top=20&$select=Title";
最後に
以下のサイトではオンプレ・オンライン含めて使えるSharePointRestAPIがまとめられているので、参考になると思います
-
SharePoint REST サンプル集 - SharePoint Developer
SharePoint Online や、オンプレ SharePoint で使える、SharePoint REST のサン ...
続きを読む
会社紹介
私が所属しているアドバンスド・ソリューション株式会社(以下、ADS)は一緒に働く仲間を募集しています
会社概要
「技術」×「知恵」=顧客課題の解決・新しい価値の創造
この方程式の実現はADSが大切にしている考えで、技術を磨き続けるgeekさと、顧客を思うloveがあってこそ実現できる世界観だと思っています
この『love & geek』の精神さえあれば、得意不得意はno problem!
技術はピカイチだけど顧客折衝はちょっと苦手。OKです。技術はまだ未熟だけど顧客と知恵を出し合って要件定義するのは大好き。OKです
凸凹な社員の集まり、色んなカラーや柄の個性が集まっているからこそ、常に新しいソリューションが生まれています
ミッション
私たちは、テクノロジーを活用し、業務や事業の生産性向上と企業進化を支援します
-
アドバンスド・ソリューション株式会社
アドバンスド・ソリューションは主にMicrosoft製品を使用して、企業の生産性向上に取り組んでいます。要件定義から導入 ...
サイトへ移動
-
お問い合わせ | アドバンスド・ソリューション株式会社
お問い合わせはこちら