摘要: 图形验证码+短信验证码实战 ## 前言: 上一篇分分享了[基于阿里云实现的短信验证码](https://www.cnblogs.com/wml-it/p/17613232.html)文章,考虑到为了防止登录时,非人工操作,频繁获取验证码,趁热打铁,现在添加了图片验证码服务功能。借鉴网上传统的做法,把实现这两个验证的功能做成有个 阅读全文
posted @ 2023-08-09 16:03 码农阿亮 阅读(1665) 评论(0) 推荐(4) 编辑
摘要: 基于阿里云服务实现短信验证码功能 ## 前言: 阿里云短信服务是一项基于云计算和大数据技术的企业级短信平台服务。它能够为企业和开发者提供高可用、高性能、高稳定性的短信发送服务,可以快速地将各类业务通知、验证码、营销推广等信息发送给用户。在我们经常登录一些系统或者APP时候,经常会遇到其他登录登录方式——短信验证码登录。这也是我前一段 阅读全文
posted @ 2023-08-08 08:28 码农阿亮 阅读(1372) 评论(4) 推荐(2) 编辑
摘要: 搭建私有的的NuGet包服务教程 一、创建一个空的Web项目 1.创建一个.NetFramWork 平台的Web空项目 二、安装Nuget包NugetServer 安装成功后,会为我们安装如下这么多依赖包 <packages> <package id="Microsoft.AspNet.WebApi" version="5.2.3" 阅读全文
posted @ 2022-07-31 13:54 码农阿亮 阅读(369) 评论(1) 推荐(1) 编辑
摘要: NuGet打包类库并上传教程 一、准备 1 . 下载 Download NuGet.exe 2 . windows 系统下设置环境变量 path中 或者 在dos 命令窗口下cd转到 nuget.exe 所在目录,这里为了每次使用方便,设置环境变量。 第一步:将下载的的NuGet.exe放到一个指定目录下,之后不要删除和移动,切 阅读全文
posted @ 2022-07-31 13:20 码农阿亮 阅读(959) 评论(2) 推荐(4) 编辑
摘要: RabbitMQ的六种工作模式 ## 一、普通队列模式 1. 一个消费者,一个队列,一个消费者。 2. 消息产生消息放入队列,消息的消费者(consumer) 监听(while) 消息队列,如果队列中有消息,就消费掉,消息被拿走后,自动从队列中删除(隐患 消息可能没有被消费者正确处理,已经从队列中消失了,造成消息的丢失)应用场景: 阅读全文
posted @ 2022-07-30 23:14 码农阿亮 阅读(2113) 评论(0) 推荐(1) 编辑
摘要: RESTFul API [TOC] ## 一、前言 RESTful API 是基于HTTP协议产生的一种相对简单的API设计方案; RESTful 的核心是 everything is a “resource”,所有的HTTP action,都应该是相应resource上可以被操作和处理的,而API 就是对资源的管理操作, 阅读全文
posted @ 2021-11-30 10:44 码农阿亮 阅读(444) 评论(0) 推荐(0) 编辑
摘要: Dump日志记录 /// <summary> /// 功能描述:程序全局异常捕获Dump文件记录 /// </summary> public static class MiniDump { [Flags] public enum Option : uint { // From dbghelp.h: 阅读全文
posted @ 2024-01-04 15:32 码农阿亮 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 核心代码 public static class DownloadHelper { /// <summary> /// 断点下载 /// </summary> /// <param name="controller"></param> /// <param name="fullpath"></par 阅读全文
posted @ 2023-10-19 13:55 码农阿亮 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 核心代码 /// <summary> /// 点位信息 /// </summary> [DataContract] public class DPoint { /// <summary> /// x坐标,对应经度 /// </summary> public double x; /// <summar 阅读全文
posted @ 2023-10-19 13:42 码农阿亮 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 核心代码 /// <summary> /// 地图坐标转换 /// </summary> public class Map { /****************************************************/ #region 坐标转换 private const doub 阅读全文
posted @ 2023-10-19 09:08 码农阿亮 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 核心代码 public class GpsHelper { private const double EARTH_RADIUS = 6378137; /// <summary> /// 计算两点位置的距离,返回两点的距离,单位 米 /// 该公式为GOOGLE提供,误差小于0.2米 /// </su 阅读全文
posted @ 2023-10-18 09:37 码农阿亮 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 核心代码 public class ZipHelper { #region 基础参数 public delegate void UnZipProgressEventHandler(object sender, UnZipProgressEventArgs e); public event UnZip 阅读全文
posted @ 2023-10-18 09:36 码农阿亮 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 一、引用 二、代码 帮助类 /// <summary> /// ZXing.NET 二维码帮助类 /// </summary> public class ZXingHelper { /// <summary> /// 站点二维码的目录 /// </summary> private static st 阅读全文
posted @ 2023-10-18 09:34 码农阿亮 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 一、前言 ZXing.Net的一个可移植软件包,是一个开源的、多格式的1D/2D条形码图像处理库,最初是用Java实现的。已经过大量优化和改进,它已经被手动移植。它与.Net 2.0、.Net 3.5、.Net 4.x、.Net 5.x、.Net 6.x、.Net 7.x、Windows RT类库和 阅读全文
posted @ 2023-10-13 13:23 码农阿亮 阅读(775) 评论(0) 推荐(1) 编辑
摘要: 国庆期间“头像+国旗”玩法是如何实现的? 前言 随着一年一度的国庆假期越来越近,身边的国庆氛围也越来越重,很多人也开始换上了渐变国旗头像,提前为祖国母亲庆生。那每年都很火的渐变国旗头像要如何制作呢?其实一点也不难!接下来就分享一种渐变国旗头像生成方法。 制作原理 上传原始微信或其他头像,将头像的Image对象用Graphics创建返回GDI 阅读全文
posted @ 2023-09-28 11:14 码农阿亮 阅读(301) 评论(1) 推荐(2) 编辑
摘要: 【23种设计模式】外观模式(十) 前言 外观模式,英文名称是:Facade Pattern。我们先从名字上来理解一下“外观模式”。我看到了“外观”这个词语,就想到了“外表”这个词语,两者有着很相近的意思。就拿谈恋爱来说,“外表”很重要,如果第一眼看着很舒服、有眼缘,那就有交往下去的可能。如果长的“三寸钉、枯树皮”,估计就够呛了。在这 阅读全文
posted @ 2023-09-26 15:22 码农阿亮 阅读(613) 评论(0) 推荐(3) 编辑
摘要: WebApi中添加Jwt鉴权 前言 JSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用 JWT 在用户和服务器之间传递安全可靠的信息。一个 JWT 实际上就是一个字符串,它由三部分组成,头部、载荷与签名。前两部分需要经过 Base64 编码,后一部分通过前两部分 Base64 编码后再加密而成。针对 阅读全文
posted @ 2023-09-26 08:16 码农阿亮 阅读(359) 评论(0) 推荐(1) 编辑
摘要: 【工具分享】视频号下载助手,亲测免费可用 前言 当你在休闲刷视频号中的时候,不知是否有存如下这种情况:总有一瞬间,刷到了触动你心灵的视频,比如:美景、美食、笑话、民谣和段子,又或者是名人格言、人生感悟和治愈系视频。此时你非常想把视频下载下来,分享下朋友圈或发给你的朋友、死党或者闺蜜。对于分享欲极强的我来说,这种情况经常会在我身上发生。众所周 阅读全文
posted @ 2023-09-23 15:38 码农阿亮 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 基于百度AI实现文字和图像敏感内容审核 前言 百度AI是指百度公司的人工智能技术全称。它采用深度学习技术,包括自然语言处理、语音识别、计算机视觉、知识图谱等,可应用于各个领域如互联网、医疗、金融、教育、汽车、物流等。百度AI的发展将帮助人类更好地理解世界和提高生活品质,接下来就通过一个小案例演示实现百度AI在文字和图像敏感审核应用。 项目 阅读全文
posted @ 2023-09-19 14:50 码农阿亮 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 基于 ActionFilters 的限流库DotNetRateLimiter使用 前言 在构建API项目时,有时出于安全考虑,防止访问用户恶意攻击,希望限制此用户ip地址的请求次数,减轻拒绝服务攻击可能性,也称作限流。接下来,我们就来学习开源库DotNetRateLimiter 如何轻松实现限流。 项目使用配置 安装Nuget包 在新建立的WebAPI项目中,通过Nuget包管理 阅读全文
posted @ 2023-09-18 08:14 码农阿亮 阅读(452) 评论(0) 推荐(3) 编辑
摘要: C#反射实现插件式开发 前言 插件式架构,一种全新的、开放性的、高扩展性的架构体系。插件式架构设计好处很多,把扩展功能从框架中剥离出来,降低了框架的复杂度,让框架更容易实现。扩展功能与框架以一种很松的方式耦合,两者在保持接口不变的情况下,可以独立变化和发布。基于插件设计并不神秘,相反它比起一团泥的设计更简单,更容易理解。 阅读全文
posted @ 2023-09-15 23:49 码农阿亮 阅读(1818) 评论(1) 推荐(7) 编辑
摘要: 【23种设计模式】装饰模式(九) 前言 装饰模式,英文名称:Decorator Pattern。我第一次看到这个名称想到的是另外一个词语“装修”,我就说说我对“装修”的理解吧,大家一定要看清楚,是“装修”,不是“装饰”。在房子装修的过程中,各种功能可以相互组合,来增加房子的功用。类似的,如果我们在软件系统中,要给某个类型或者对象增加 阅读全文
posted @ 2023-09-12 09:46 码农阿亮 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 【23种设计模式】组合模式(八) 前言 组合模式,英文名称是:Composite Pattern。当我们谈到这个模式的时候,有一个物件和这个模式很像,也符合这个模式要表达的意思,那就是“俄罗斯套娃”。“俄罗斯套娃”就是大的瓷器娃娃里面装着一个小的瓷器娃娃,小的瓷器娃娃里面再装着更小的瓷器娃娃,直到最后一个不能再装更小的瓷器娃娃的那个 阅读全文
posted @ 2023-09-11 13:14 码农阿亮 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 【23种设计模式】桥接模式(七) ## 前言 【**桥接模式**】是【**结构型**】设计模式的第二个模式,也有叫【桥模式】的,英文名称:**Bridge Pattern**。 大家第一次看到这个名称会想到什么呢?我第一次看到这个模式根据名称猜肯定是连接什么东西的。因为桥在我们现实生活中经常是连接着A地和B地,再往后来发展,桥引申为 阅读全文
posted @ 2023-09-05 16:25 码农阿亮 阅读(497) 评论(0) 推荐(2) 编辑
摘要: ## 声明 技术在于分享,为了让更多的IT工作者看到和学习到本人分享的技术文章,从即日起,本人将本博客中分享的技术文章,同步到CSDN平台。同时也仍然会继续在本平台创作分享,希望大家多多支持! ## 同步CSDN账号地址 **CSDN账号1:** [努力搬砖的阿亮](https://blog.csd 阅读全文
posted @ 2023-09-01 16:37 码农阿亮 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 【23种设计模式】适配器模式(六) ## 前言 从今天开始我们开始讲【结构型】设计模式,【结构型】设计模式有如下几种:**适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式**。【创建型】的设计模式解决的是对象创建的问题,那【结构型】设计模式解决的是类和对象的组合关系的问题。 今天我们就开始讲【结构型】设计模式里面 阅读全文
posted @ 2023-09-01 11:17 码农阿亮 阅读(146) 评论(2) 推荐(0) 编辑