This commit is contained in:
王炜翔 2024-11-03 23:09:00 +08:00
parent 3ad96bcce9
commit ad2a431669
3 changed files with 28 additions and 23 deletions

View File

@ -234,14 +234,14 @@ namespace asg_form.Controllers
/// </summary>
[Route("api/v2/makeCaptcha")]
[HttpGet]
public async Task<ActionResult<(string captchaImage, string captchaCode)> >GetCaptcha()
public async Task<ActionResult<object> >GetCaptcha()
{
try
{
var captchaService = new CaptchaService();
var (captchaImage, captchaCode) = captchaService.GenerateCaptcha();
captchaNow=captchaCode;
var offTime = new DateTime();
/*var offTime = new DateTime();
using (var db = new TestDbContext())
{
var query = db.T_captcha_check.AsQueryable();
@ -260,8 +260,8 @@ namespace asg_form.Controllers
};
db.Add(msg);
db.SaveChanges();
}
return Ok(new { captchaImage });
}*/
return Ok(new { code = 200, captchaImage ,captchaCode});
}
catch (Exception ex) {
return Ok(new { code = 500, message = "服务器错误", ex });

View File

@ -175,13 +175,8 @@ namespace asg_form.Controllers
/// </summary>
[Route("api/v1/admin/menuFind")]
[HttpGet]
[Authorize]
public async Task<ActionResult<object>> menuFind()
{
if (!this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "nbadmin"))
{
return BadRequest(new error_mb { code = 400, message = "无权访问" });
}
using (var db = new TestDbContext())
{
try

View File

@ -10,28 +10,38 @@ public class CaptchaService
// 生成验证码图像并返回Base64字符串
public (string captchaImage, string captchaCode) GenerateCaptcha()
{
generatedCaptchaCode = GenerateRandomCode(4); // 生成5位随机字符
wrp = 2;
Bitmap bitmap = new Bitmap(100, 40);
using (Graphics g = Graphics.FromImage(bitmap))
string wp = "123";
try
{
g.Clear(Color.White);
using (Font font = new Font("Arial", 20))
System.AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);
string generatedCaptchaCode = GenerateRandomCode(4); // 生成4位随机字符
Bitmap bitmap = new Bitmap(100, 40);
wp = "122";
using (Graphics g = Graphics.FromImage(bitmap))
{
g.DrawString(generatedCaptchaCode, font, Brushes.Black, 10, 10);
g.Clear(Color.White);
using (Font font = new Font("Arial", 20))
{
g.DrawString(generatedCaptchaCode, font, Brushes.Black, 10, 10);
}
}
wp = "233";
using (MemoryStream ms = new MemoryStream())
{
bitmap.Save(ms, ImageFormat.Png);
string base64Image = Convert.ToBase64String(ms.ToArray());
return (base64Image, generatedCaptchaCode);
}
}
wrp = 1;
using (MemoryStream ms = new MemoryStream())
catch (Exception ex)
{
bitmap.Save(ms, ImageFormat.Png);
string base64Image = Convert.ToBase64String(ms.ToArray());
return (base64Image, generatedCaptchaCode);
Console.WriteLine($"Error generating captcha: {ex.Message}");
return (ex.Message, wp);
}
}
// 生成随机字符
private string GenerateRandomCode(int length)