189 8069 5689

用BlazorServerSide如何实现图片验证码-创新互联

创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!

东乡族ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

这篇文章将为大家详细讲解有关用Blazor Server Side如何实现图片验证码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

关于Blazor

由于在国内, Blazor一点都不普及, 在阅读此文前, 建议读者先翻看我之前写的随笔, 了解Blazor Server Side的特点.

在一段时间内, 我会写一些解说分析型的 "为什么选择 Blazor Server Side" , 在适当的时候再写快速入门系列.(无论是针对编程新学者还是多年经验人士)

验证码

我们很多场合都实现过图片验证码.

图片验证码的主要关键是呈现图片, 需要一个URL, 而这个URL需要传递参数以确定显示什么东西.

这个验证码如何在服务器保存, 如何传递一个参数公开给客户端, 还不能让别人解密这个参数破解验证码, 都是麻烦事

这个例子是讲述如何用极短的 "单页" 代码, 实现验证过程.

先上图:

用Blazor Server Side如何实现图片验证码

再上代码:

@page "/BlazorVerificationCode"

(Blazor) A sample for how to show verification code and verify it.

@inject IJSRuntime jsr @{ if (imgurl == null) MakeNewImage(); }
Type the number in image
@code{ string inp_code; string vericode; string imgurl; void DoCheck() { string msg = "You typed a wrong value"; if (inp_code == vericode) msg = "Yes the number is " + vericode; jsr.InvokeAsync("alert", msg); } void MakeNewImage() { vericode = new Random().Next(100000, 999999).ToString(); using SkiaSharp.SKBitmap bmp = new SkiaSharp.SKBitmap(200, 80); using (SkiaSharp.SKCanvas canvas = new SkiaSharp.SKCanvas(bmp)) { canvas.Clear(SkiaSharp.SKColors.White); using SkiaSharp.SKPaint skp = new SkiaSharp.SKPaint(); skp.Color = SkiaSharp.SKColors.Red; skp.TextSize = 40; canvas.DrawText(vericode, 30, 55, skp); canvas.Save(); } using System.IO.MemoryStream ms = new System.IO.MemoryStream(); using SkiaSharp.SKManagedWStream ws = new SkiaSharp.SKManagedWStream(ms); bmp.Encode(ws, SkiaSharp.SKEncodedImageFormat.Jpeg, 100); imgurl = "data:image/jpeg;base64," + Convert.ToBase64String(ms.ToArray()); } }
网页名称:用BlazorServerSide如何实现图片验证码-创新互联
文章源于:http://cdxtjz.cn/article/dojgcg.html

联系我们

您好HELLO!
感谢您来到成都网站建设公司,若您有合作意向,请您为我们留言或使用以下方式联系我们, 我们将尽快给你回复,并为您提供真诚的设计服务,谢谢。
  • 电话:028- 86922220 18980695689
  • 商务合作邮箱:631063699@qq.com
  • 合作QQ: 532337155
  • 成都网站设计地址:成都市青羊区锣锅巷31号五金站写字楼6楼

小谭建站工作室

成都小谭网站建设公司拥有多年以上互联网从业经验的团队,始终保持务实的风格,以"帮助客户成功"为已任,专注于提供对客户有价值的服务。 我们已为众企业及上市公司提供专业的网站建设服务。我们不只是一家网站建设的网络公司;我们对营销、技术、管理都有自己独特见解,小谭建站采取“创意+综合+营销”一体化的方式为您提供更专业的服务!

小谭观点

相对传统的成都网站建设公司而言,小谭是互联网中的网站品牌策划,我们精于企业品牌与互联网相结合的整体战略服务。
我们始终认为,网站必须注入企业基因,真正使网站成为企业vi的一部分,让整个网站品牌策划体系变的深入而持久。