/// <summary>
        /// HttpClient の作成
        /// </summary>
        /// <param name="isUpdate">更新で利用する場合 true </param>
        /// <returns></returns>
        private async Task <HttpClient> GetClient(bool isUpdate = false)
        {
            HttpClient client = new HttpClient(new HttpClientHandler()
            {
                AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate
            });

            // アクセストークンの設定
            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", await ADALService.GetAccessToken(SettingsService.crmResource));

            // 更新ではない場合、FormattedValue も取得
            if (!isUpdate)
            {
                // データは JSON で取得
                client.DefaultRequestHeaders.Add("Accept", "application/json");
                // FormattedValue を取得するため Prefer ヘッダーを指定
                client.DefaultRequestHeaders.Add("Prefer", "odata.include-annotations=\"*\"");
            }

            return(client);
        }
Esempio n. 2
0
        /// <summary>
        /// HttpClient の作成
        /// </summary>
        /// <param name="IsContentDownload">ファイルのダウンロードの場合 true</param>
        /// <returns></returns>
        private async Task <HttpClient> GetClient(bool IsContentDownload = false)
        {
            HttpClient client = new HttpClient();

            client.BaseAddress = new Uri(apiBase);

            // アクセストークンの設定
            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", await ADALService.GetAccessToken(SettingsService.spoResource));
            if (!IsContentDownload)
            {
                client.DefaultRequestHeaders.Add(
                    "Accept", "application/json");
            }
            return(client);
        }