get ,put请求

framework 导包

packge:System.Net.Http

net core 不需要

/// <summary>
        /// 参数是字符串,一个参数
        /// Put(int id)
        /// </summary>
        /// <returns></returns>
        public static string put()
        {
            HttpClient httpClient = new HttpClient()
            {
                BaseAddress = new Uri("https://localhost:5001"),
            };

            var result = httpClient.PutAsync("api/values/90", null).Result.Content.ReadAsStringAsync().Result;
            return result;
        }

        /// <summary>
        /// 参数是字符串,一个参数,和模型绑定
        /// Put(int id,LoginViewModel model)
        /// </summary>
        /// <returns></returns>
        public static string put2()
        {
            var id = 90;
            HttpClient httpClient = new HttpClient()
            {
                BaseAddress = new Uri("https://localhost:5001")
            };
            httpClient.DefaultRequestHeaders.Add("KeepAlive", "false");
            var model = new
            {
                userName = "name",
                passWord = "pwd"
            };

            var requestJson = JsonConvert.SerializeObject(model);
            HttpContent httpcontent = new StringContent(requestJson, Encoding.UTF8, "application/json");
            //httpcontent.Headers.ContentType = new MediaTypeHeaderValue("application/json");

            //var abc =   httpClient.PutAsync("https://localhost:5001/api/values/5", null);

            var result = httpClient.PutAsync("api/values/90", httpcontent).Result.Content.ReadAsStringAsync().Result;
            return result;
        }

        /// <summary>
        /// 参数是字符串,一个参数,和模型绑定
        ///  Put(int id, [FromBody] string value)
        /// </summary>
        /// <returns></returns>
        public static string put3()
        {
            HttpClient httpClient = new HttpClient()
            {
                BaseAddress = new Uri("https://localhost:5001")
            };
            httpClient.DefaultRequestHeaders.Add("KeepAlive", "false");


            //就算不是实体,也传序列化后的值
            var requestJson = JsonConvert.SerializeObject("你好");
            //如果直接new StringContent("中文", Encoding.UTF8, "application/json"); 会异常
            //因为是FromBody修饰的,要json下
            HttpContent httpcontent = new StringContent(requestJson, Encoding.UTF8, "application/json");
            //httpcontent.Headers.ContentType = new MediaTypeHeaderValue("application/json");

            //var abc =   httpClient.PutAsync("https://localhost:5001/api/values/5", null);

            //var result = httpClient.PutAsync("api/values/90", httpcontent).Result.Content.ReadAsStringAsync().Result;
            var result = httpClient.PutAsync("api/v1/user/90", httpcontent).Result.Content.ReadAsStringAsync().Result;
            return result;
        }

猜你喜欢

转载自www.cnblogs.com/nsky/p/10629819.html