すのはら荘春原庄的雪

HttpCilent跨服务请求

Toretto·2023-08-13 22:12·23 次阅读

HttpCilent跨服务请求

 

HttpCilent跨服务请求

需要先引用 S.Common 调用里面的 HttpClient 帮助类#

注意:不能直接引用别人的Api,如需传参数自己定义Dto,或者拼接参数#

Get

 /// <summary>

        /// 跨服务请求角色列表

        /// </summary>

        /// <returns></returns>

        [HttpGet("GetPageRole")]

        public IActionResult GetPageRole(int page=1,int size=5,string? name="")

        {

            var list = HttpClientHelper.GetResponse($"https://localhost:7109/api/RoleMenuRead/GetPageRole?pageIndex={page}&pageSize={size}&roleName={name}");

            return Ok(list);

        }

如果需要使用获取到的值显示,需要定义Dto 进行反序列化

 /// <summary>

        /// 跨服务请求角色列表

        /// </summary>

        /// <returns></returns>

        [HttpGet("GetPageRole")]

        public IActionResult GetPageRole(int page = 1, int size = 5, string? name = "")

        {

            var jsonString = HttpClientHelper.GetResponse($"https://localhost:7109/api/RoleMenuRead/GetPageRole?pageIndex={page}&pageSize={size}&roleName={name}");

 

            // 反序列化并显示分页数据

            var response = JsonConvert.DeserializeObject<ResponseDto>(jsonString);

 

            return Ok(response);

        }

 

        public class ResponseDto

        {

            public List<RoleAddDto> RoleList { get; set; }

            public int PageCount { get; set; }

            public int TotalCount { get; set; }

        }

Post

 /// <summary>

        /// 跨服务添加角色

        /// </summary>

        /// <param name="role"></param>

        /// <returns></returns>

        /// 

        [HttpPost("AddRole")]

        public IActionResult AddRole(RoleAddDto role)

        {

            var result = HttpClientHelper.PostResponse("https://localhost:7026/api/RoleMenu/AddRole", role);

            return Ok(result);

        }

 

Delete

/// <summary>

        /// 跨服务删除耳标

        /// </summary>

        /// <returns></returns>

        /// 

        [HttpPost("DeleteRole")]

        public IActionResult DeleteEarTag(int id)

        {

            var result = HttpClientHelper.DeleteResponse($"http://localhost:5283/api/EarTag/DeleteEarTag?id={id}");

            return Ok(result);

        }

Put

 /// <summary>

        /// 跨服务修改角色

        /// </summary>

        /// <param name="role"></param>

        /// <returns></returns>

 

        [HttpPut("UpdateRole")]

        public IActionResult UpdateRole(RoleAddDto role)

        {

            var reqult = HttpClientHelper.PutDataResponse("https://localhost:7026/api/RoleMenu/UpdateRole", role);

            return Ok(reqult);

        }

posted @   想睡觉的小坤  阅读(23)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示
目录