C# http post請求

設置身份驗證

        /// <summary>
        /// Http Post請求
        /// </summary>
        /// <param name="url"></param>
        /// <param name="postData"></param>
        /// <param name="statusCode"></param>
        /// <returns>string響應結果</returns>
        public string PostResponse(string url, string postData, out string statusCode)
        {
            string result = string.Empty;
HttpResponseMessage response ;
            //設置Http的正文
            HttpContent httpContent = new StringContent(postData);
            //設置Http的內容標頭
            httpContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
            //設置Http的內容標頭的字符
            httpContent.Headers.ContentType.CharSet = "utf-8";
            using (HttpClient httpClient = new HttpClient())
            {
                string value = $"{user.UserName}:{user.Password}";
                httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Basic", Convert.ToBase64String(Encoding.Default.GetBytes(value)));
                //異步Post
                try
                {
                    response = httpClient.PostAsync(url, httpContent).Result;
                }
                catch (Exception ex)
                {
                    Tips.Text = ex.Message;
                }
                //輸出Http響應狀態碼
                statusCode = response.StatusCode.ToString();
                //確保Http響應成功
                if (response.IsSuccessStatusCode)
                {
                    //異步讀取json
                    result = response.Content.ReadAsStringAsync().Result;
                }
            }
            return result;
        }
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容