客户端 HttpClient var url = $"https://localhost:44323/api/values/posttest?resource_source=yangwwmessage"; using (HttpClient _client = new HttpClient()) { using (var multiContent = new MultipartFormDataContent()) { var fileContent = new ByteArrayCon…
需求背景: 在需要通过服务端请求传递文件二进制文件流数据到相关的服务端保存时,如对接第三方接口很多情况下都会提供一个上传文件的接口,但是当你直接通过前端Ajax的方式将文件流上传到对方提供的接口的时候往往都会存在跨域的情况,这时候我们就需要通过服务端提交文件流来解决这个跨域的情况.本篇的主角就是使用HttpClient进行Http请求,提交二进制文件流到文件服务器中. HttpClient简单介绍: HttpClient类实例充当发送 HTTP 请求的会话. HttpClient实例是对该实例执…
本文需要您了解ASP.NET Core Web API 和 xUnit的相关知识. 这里有xUnit的介绍: https://www.cnblogs.com/cgzl/p/9178672.html#test ASP.NET Core集成测试官方文档: https://docs.microsoft.com/en-us/aspnet/core/test/integration-tests?view=aspnetcore-2.1 集成测试 vs 单元测试 测试金字塔, 但它只是一个指导性的概念. 如果…
在 ASP.NET Core Web API 集成测试一文中, 我介绍了ASP.NET Core Web API的集成测试. 在那里我使用了测试专用的Startup类, 里面的配置和开发时有一些区别, 例如里面去掉了用户身份验证相关的中间件. 但是有些被测试的行为里面需要用到身份/授权信息. 所以本文就介绍一下在API集成测试中发送请求时使用Bearer Token作为Authorization Header的情况. 集成测试中使用Bearer Token 我这个项目里生产时使用的是Identi…
下载source from GitHub 对ASP进行深度重构和优化.NET Core WEB API应用程序代码 介绍 第1部分.创建一个测试的RESTful WEB API应用程序. 第2部分.增加了ASP.NET Core WEB API应用程序的生产力. 在第3部分中,我们将回顾以下内容: 为什么我们需要重构和改进代码?在try/catch/finally中的不重复(DRY)原则异常处理阻止了我们的异常处理中间件在.net Core统一异常消息格式中记录到文件的需求.net Core异常…
下载source from GitHub 使用各种方法来增加ASP.NET Core WEB API应用程序的生产力 介绍 第1部分.创建测试RESTful WEB API应用程序第2部分.增加了ASP.NET Core WEB API应用程序的生产力.第3部分.对ASP进行深度重构和优化.NET Core WEB API应用程序代码 在第2部分中,我们将回顾以下内容: 应用生产力;异步设计模式;数据规范化vs SQL查询效率NCHAR vs NVARCHAR数据类型;使用MSSQL serve…
在 ASP.NET Core Web API中使用 Polly 构建弹性容错的微服务 https://procodeguide.com/programming/polly-in-aspnet-core/​ 在本文中,我们将了解如何在微服务中实现容错,即在 ASP.NET Core 中使用 Polly 构建弹性微服务(Web API).通过在微服务中实现容错,我们确保在其中一项服务发生任何故障时,整个系统不会受到影响. 在本文中,我不会介绍如何在 ASP.NET Core 中构建微服务,因为我已经…
在Mac下创建ASP.NET Core Web API 这系列文章是参考了.NET Core文档和源码,可能有人要问,直接看官方的英文文档不就可以了吗,为什么还要写这些文章呢? 原因如下: 官方文档涉及的内容相当全面,属于那种大而全的知识仓库,不太适合初学者,很容易让人失去重要,让人掉入到具体的细节之中. 对于大多数人来讲开发语言只是工具,程序员都有一个通病,就是死磕工具,把工具学深.我认为在工具上没有必要投入太多时间,以能高效地完成日常的工作项> 目为准即可.要需求驱动学习,你需要什么学什么.…
使用Postman进行手动测试 如果您是开发人员,测试人员或管理人员,则在构建和使用应用程序时,有时了解各种API方法可能是一个挑战. 使用带有.NET Core的Postman为您的Web API生成良好的文档和帮助页面就像进行一些HTTP调用一样简单. 让我们开始从GitHub下载简单的待办事项. 从这个链接下载并运行下面的TodoMvcSolution . 下载Postman Postman是Google Chrome应用程序,用于测试API调用.您可以从下面的网站下载并安装Postman…
很长一段时间以来,我都在思考如何在ASP.NET Core的框架下,实现一套完整的事件驱动型架构.这个问题看上去有点大,其实主要目标是为了实现一个基于ASP.NET Core的微服务,它能够非常简单地订阅来自于某个渠道的事件消息,并对接收到的消息进行处理,于此同时,它还能够向该渠道发送事件消息,以便订阅该事件消息的消费者能够对消息数据做进一步处理.让我们回顾一下微服务之间通信的几种方式,分为同步和异步两种.同步通信最常见的就是RESTful API,而且非常简单轻量,一个Request/Resp…