首页 > 其他分享 >B站视频WPF实战教程修改代码

B站视频WPF实战教程修改代码

时间:2023-07-15 15:44:31浏览次数:25  
标签:实战 教程 request uri response add new WPF baseRequest

P36

HttpRestClient.cs 部分代码

public async Task<ApiResponse> ExecuteAsync(BaseRequest baseRequest)
        {
            //uri
            var uri = new Uri(apiUrl + baseRequest.Route);

            //new restrequest
            //add uri
            var request = new RestRequest(uri);
            //add method
            request.Method=baseRequest.Method;
            //add header
            request.AddHeader("Content-Type", baseRequest.ContentType);
            //add Parameter
            if (baseRequest.Parameter != null)
                request.AddParameter("param", JsonConvert.SerializeObject(baseRequest.Parameter), ParameterType.RequestBody);

            //判断client是否为空
            if (client == null)
                return new ApiResponse()
                {
                    Status = false,
                    Result = null,
                    Message = "client为空"
                };

            //执行
            var response = await client.ExecuteAsync(request);

            //如果成功则执行序列化任务,否则返回失败代码
            if (response.StatusCode == System.Net.HttpStatusCode.OK)
                return JsonConvert.DeserializeObject<ApiResponse>(response.Content);

            else

                return new ApiResponse()
                {
                    Status = false,
                    Result = null,
                    Message = response.ErrorMessage
                };
        }

        public async Task<ApiResponse<T>> ExecuteAsync<T>(BaseRequest baseRequest)
        {
            //uri
            var uri = new Uri(apiUrl + baseRequest.Route);

            //new restrequest
            //add uri
            var request = new RestRequest(uri);
            //add method
            request.Method = baseRequest.Method;
            //add header
            request.AddHeader("Content-Type", baseRequest.ContentType);
            //add Parameter
            if (baseRequest.Parameter != null)
                request.AddParameter("param", JsonConvert.SerializeObject(baseRequest.Parameter), ParameterType.RequestBody);

            //判断client是否为空
            if (client == null)
                return new ApiResponse<T>()
                {
                    Status = false,
                    Message = "client为空"
                };

            //执行
            var response = await client.ExecuteAsync(request);

            //如果成功则执行序列化任务,否则返回失败代码
            if (response.StatusCode == System.Net.HttpStatusCode.OK)
                return  JsonConvert.DeserializeObject<ApiResponse<T>>(response.Content);

            else
                return new ApiResponse<T>()
                {
                    Status = false,
                    Message = response.ErrorMessage
                };
        }

标签:实战,教程,request,uri,response,add,new,WPF,baseRequest
From: https://www.cnblogs.com/dongxinya/p/17556221.html

相关文章

  • Maven多模块项目架构配置介绍和实战
    原文地址:https://ntopic.cn/p/2023071501/源代码先行:Gitee多模块项目仓库:https://gitee.com/obullxl/ntopic-bootGitHub多模块项目仓库:https://github.com/obullxl/ntopic-boot背景介绍我们项目采用的是Maven多模块架构,我发现项目的部分子模块的pom.xml中重复引用了相同的J......
  • AI绘画Stable Diffusion实战操作: 62个咒语调教-时尚杂志封面
    今天来给大家分享,如何用sd简单的咒语输出好看的图片的教程,今天做的是时尚杂志专题,话不多说直入主题。还不会StableDiffusion的基本操作,推荐看看这篇保姆级教程:AI绘画:StableDiffusion终极炼丹宝典:从入门到精通飞书原文链接:AI绘画StableDiffusion实战操作:62个咒语调教-时尚杂......
  • ES 实战复杂sql查询、修改字段类型
    转载请注明出处:1.查询索引得mapping与setting get直接查询索引名称时,会返回该索引得mapping和settings得配置,上述返回得结构如下:{"terra-syslog_2023-07-12":{"aliases":{},"mappings":{"properties":{"@ti......
  • WPF - 001 数据绑定
    数据绑定WPF数据绑定四大要素:绑定源、绑定源属性、绑定目标、绑定目标属性。绑定源可以是:CLR对象ADOXMLDependencyObject绑定目标可以是:DependencyObject能够绑定的属性都是依赖属性,即DependencyProperty,所有DependencyProperty的值都是Object->Denpende......
  • Angular Schematics 实战 - 项目根目录新建一个文件
    AngularSchematics是一个由Angular团队提供的工作流工具,用于在Angular应用程序中自动化开发过程。Schematics可以创建一个新的Angular应用,生成简单或复杂的代码片段,或者修改现有代码以添加新功能或行为。它提供了一个可扩展的方法,允许开发者以一种可维护的方式定制或扩展......
  • Python教程(3)——python开发工具vscode的下载与安装
    python的开发工具有很多款,很多都是非常好用的,其中vscode作为其中一款Python的开发工具,是非常轻量级的,今天我们来介绍一下vscode的下载与安装。vscode的下载与安装首先需要到vscode的官网,这个谷歌或者百度一下就可以搜到,然后根据你的系统下载你对应的版本,我这里使用的window,所以......
  • Python多领域场景实战课 快速成为多面手
    第1章课程介绍6节|69分钟第2章学习编程的第一道门槛【环境准备】12节|48分钟第3章常规的3种Python数据【编程语法】11节|82分钟第4章Python内置的4种数据结构【编程语法】11节|114分钟第5章用Python代码实现逻辑思路【编程语法】12节|94分钟第6章Python函数和类的使用【编程......
  • 全新版FRIDA与安卓 应用安全与逆向实战宝典
    第1章打造安卓逆向专用PC和手机环境10节|72分钟工欲善其事,必先利其器。在本章中将会介绍笔者在`Android`逆向工作中所用到的一些环境配置,包括主机和测试机的一些基础环境。一个良好的工作系统体系能给工作人员在工作过程中带来很多便利,让大家不必因为环境问题焦头烂额。...第2......
  • Python保姆级教程 数据类型—新手小白入门必看系列
    推荐使用压缩软件和杀毒软件7-zip使用火绒一、基本数据类型与变量(上)2.1注释优点:代码说明没注释的代码有注释的代码不让解释器执行注释的那句话2.2单行注释单行注释快捷键:ctrl+?2.3多行注释""""""(三个双引号)2.4字面量变量字面量是已经被定义好的量在......
  • 在Docker上实战ElasticSearch以及与SpringBoot集成
    简介项目地址:https://gitee.com/charlinchenlin/wysmallElasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfulweb接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elastic......