【.net core 和 WPF 开发升讯威在线客服系统:系统总体架构】教程文章相关的互联网学习教程文章

asp net core 2.1中如何使用jwt(从原理到精通)【图】

为什么使用 Jwt最近,移动开发的劲头越来越足,学校搞的各种比赛都需要用手机 APP 来撑场面,所以,作为写后端的,很有必要改进一下以往的基于 Session 的身份认证方式了,理由如下: 移动端经常要保持长时间(1 到 2 星期)在线,但是 Session 却不好在服务端保存这么久,虽然可以持久化到数据库,但是还是挺费资源移动端往往不是使用的网页技术,所以藏在 Cookie 里面的 SessionId 不是很方便的传递给服务端服务端暴露给客户端的...

ASP.NET Core使用GraphQL第一章之Hello World

前言你是否已经厌倦了REST风格的API? 让我们来聊一下GraphQL。 下面是GraphQL的定义: GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。 GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让 API 更容易地随着时间推移而演进,还能用于构建强大的开发者工具。 GraphQL由Facebook开发,始于2012年,2015年公开。 GraphQL牛逼之处是它可...

ASP.NET Core SignalR中的流式传输深入讲解【图】

前言 什么是流式传输?流式传输是这一种以稳定持续流的形式传输数据的技术。流式传输的使用场景 有些场景中,服务器返回的数据量较大,等待时间较长,客户端不得不等待服务器返回所有数据后,再进行相应的操作。这时候使用流式传输,可以将服务器数据碎片化,当每个数据碎片读取完成之后,就只传输完成的部分,而不需要等待所有数据都读取完成。SignalRSignalR是一个.NET Core/.NET Framework的开源实时框架. SignalR的可使用Web S...

asp net core2.1如何使用jwt从原理到精通(二)

在aspnet core中,自定义jwt管道验证有了上一节的内容作为基础,那这点也是非常容易的,关键点在中间件,只是把上一级在测试类中的自定义验证放到中间件中来即可, 不过需要注意:中间件 的位置很重要,只有它后面的管道才会收到影响; 那我们先建一个自定义中间件类:(中间件的详细内容这里就不讲了,大家可以参考官网和其他博文) /// <summary>/// 自定义授权中间件/// </summary>public class JwtCustomerAuthorizeMiddleware...

.net core如何利用ConcurrentTest组件对方法进行压力测试详解

前言 工欲善其事,必先利其器!在编写服务中首先要有一个好的测试工具,在dontecore下性能测试有BenchmarkDotNet,只需要简单的配置一下就可以对方法的性能进行详细的测试。但有时候需要对不同并发下看其处理效率和延时统计查看,如HTTP服务对应着大量的测试工具如ab,bombardier等等。由于找不到类似于测试HTTP服务的工具来测试代码用例,于时就有了ConcurrentTest这个组件的实现.通过ConcurrentTest组件可以运行不同的测试用例,并...

Asp.Net Core中基于Session的身份验证的实现

在Asp.Net框架中提供了几种身份验证方式:Windows身份验证、Forms身份验证、passport身份验证(单点登录验证)。 每种验证方式都有适合它的场景:1.Windowss身份验证通常用于企业内部环境,Windows Active Directory就是基于windows平台的身份验证实现; 2.Forms身份验证是Asp.Net框架中提出的另一种验证方式; 3.passport身份验证是微软提供的基于自己的lives账号实现的单点认证服务。 Asp.net Core验证码登录遇到两个小问题 第一是...

详解ASP.NET Core WebApi 返回统一格式参数

业务场景: 业务需求要求,需要对 WebApi 接口服务统一返回参数,也就是把实际的结果用一定的格式包裹起来,比如下面格式:{"response":{"code":200,"msg":"Remote service error","result":""} } 具体实现:using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters;public class WebApiResultMiddleware : ActionFilterAttribute {public override void OnResultExecuting(ResultExecutingContext context){//根...

Asp.Net Core轻松学习系列之配置文件【图】

前言在 .NET Core 项目中,配置文件有着举足轻重的地位;与.NetFramework 不同的是,.NET Core 的配置文件都以 .json 结尾,这表示一个标准的 json 格式的文件;一个标准的 Asp.Net Core MVC 项目,一定带着一个 appsettings.json 文件,该文件便是项目默认配置文件,这和基于 .NetFramework 创建的 Asp.Net Web Application (默认配置名称:App.config) 有着根本的不同,今天我们就学习如何添加自定义配置到文件中,并把该配置在...

在AspNetCore中使用极验做行为认证的验证流程【图】

极验验证 极验验证是一种在计算机领域用于区分自然人和机器人的,通过简单集成的方式,为开发者提供安全、便捷的云端验证服务。 与以往传统验证码不同的是,极验通过分析用户完成拼图过程中的行为特征,通过数据分析来判断是人还是机器。用户不必面对眼花缭乱的英文字符或汉字,整个验证过程变的像游戏一样有趣。 先上效果图极验的流程 极验官方文档地址 https://docs.geetest.com/install/deploy/server/csharp 简单说明一下极验的...

.NET Core 2.1中HttpClientFactory的最佳实践记录【图】

前言 ASP.NET Core 2.1中出现一个新的HttpClientFactory功能, 它有助于解决开发人员在使用HttpClient实例从其应用程序发出外部Web请求时可能遇到的一些常见问题。 介绍在.NETCore平台的2.1新增了HttpClientFactory,虽然HttpClient这个类实现了disposable,但使用它的时候用声明using包装块的方式通常不是最好的选择。处理HttpClient,底层socket套接字不会立即释放。该HttpClient类是专为多个请求重复使用而创建的。需要不同的基...

.NET使用.NET Core CLI开发应用程序【图】

要开发.NET Core应用程序,除了使用强大的Visual Studio之外,还可以使用.NET Core CLI。 .NET Core CLI (Command-Line Interface),也就是.NET Core命令行界面,它是一个开发.NET Core应用程序的跨平台工具链。 安装.NET Core SDK后,就可以使用.NET Core CLI,在命令提示符窗口中,使用dotnet --version查看本机安装的.NET Core的版本,或者使用dotnet --info查看本机.NET Core的安装情况。 .NET Core CLI目前支持创建控制台和AS...

.NET Core WebApi中如何实现多态数据绑定实例代码【图】

什么是.NET Core? 随着2014年 Xamarin和微软发起.NET基金会,微软在2014年11月份 开放.NET框架源代码。在.NET开源基金会的统一规划下诞生了.NET Core 。也就是说.NET Core Framework是参考.NET Framework重新开发的.NET实现,Mono是.NET Framework的一个开源的、跨平台的实现。 本文主要介绍了关于.NET Core WebApi多态数据绑定的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 什么是多态数据绑定?我...

Asp.NET Core 如何调用WebService的方法【图】

0.使用背景 因为现在的项目都是基于 .NET Core 的,但是某些需要调用第三方的 WebService 服务,故有了此文章。其基本思路是通过微软提供的 Svcutil 工具生成代理类,然后通过 System.ServiceModel 来调用代理类所提供的对象与方法。 1.配置准备 1.1 新建并编辑项目 首先新建一个新的 .NET Core 控制台程序,通过命令行窗口或者 Powershell 执行以下命令新建一个项目。 dotnet new console 然后编辑项目文件 WebServiceConsole.csp...

ASP.NET Core自定义本地化教程之从文本文件读取本地化字符串【图】

前言 本文先简要介绍在ASP.NET Core 2.0里实施全球化和本地化,默认的本地化从资源文件(resx)里读取本地化字符串。本文然后提供一个简单示例,说明如何自定义本地化,以便从文本文件读取本地化字符串。 实施全球化和本地化国际化涉及全球化和本地化。 全球化是设计支持不同区域性的应用程序的过程。 全球化添加了对一组有关特定地理区域的已定义语言脚本的输入、显示和输出支持。本地化是将已经针对可本地化性进行处理的全球化应...

.NetCore利用BlockingCollection实现简易消息队列【图】

消息队列现今的应用场景越来越大,常用的有RabbmitMQ和KafKa。我们用BlockingCollection来实现简单的消息队列。BlockingCollection实现了生产者/消费者模式,是对IProducerConsumerCollection<T>接口的实现。与其他Concurrent集合一样,每次Add或Take元素,都会导致对集合的lock。只有当确定需要在内存中创建一个生产者,消费者模式时,再考虑这个类。 MSDN中的示例用法: using (BlockingCollection<int> bc = new BlockingCollec...