Anteriormente, colegas informaron que la API del código QR de Google a veces no funcionaba.,Después de verificar la información relevante,Se me ocurrió la idea de aprender C# escribiendo esta API,Pasé algún tiempo explorando,Realmente lo saqué de ti。La función de esta API es ingresar un valor en la URL,Puede generar imágenes de QRCode directamente en el navegador,Lo siguiente se escribirá por primera vez en ASP.NET Core / Explicado desde la perspectiva de un novato en C#.。
Agregar nuevo proyecto
"Archivo → Agregar → Proyecto",Seleccione "C#" para la categoría de filtro anterior, De Windows, WebAPI」,
seleccionar API web principal de ASP.NET。
Introduzca un nombre de proyecto。
Aquí he marcado "Usar controlador",Siento que sería más claro clasificar un poco el programa.。
"Habilitar soporte OpenAPI" no está marcado,Porque no hay necesidad。
Instalar el paquete QRCoder
"Proyecto → Administrar paquetes NuGet"。
Buscar “Codificador QR”,e instalar。
Agregar controlador
En [Controladores] Haga clic derecho en el directorio,Seleccione "Unirse → Controlador"。
Seleccione "Controlador API" en el proyecto "API" – blanco"。
Seleccione el controlador API nuevamente – blanco"。
escribir un programa
Escriba un programa en el controlador recién agregado:
// using Microsoft.AspNetCore.Http; // 系統產生,沒用到。 using Microsoft.AspNetCore.Mvc; using QRCoder; namespace QRCode.Controllers { [Route("[controller]")] // 指定路徑為 xxx.com/QRCodeGen, // 不指定時,會是 xxx.com/。 // [ApiController] // 系統產生,沒用到。 public class QRCodeGenController : ControllerBase { [HttpGet] [Route("{qrText}")] public IActionResult GetQrCode(string qrText) { byte[] image = PngByteQRCodeHelper.GetQRCode(qrText, QRCodeGenerator.ECCLevel.Q, 10); return File(image, "image/png"); } } }
Resultados de la prueba
Seleccione "Depurar → Iniciar depuración"。
Ingrese el nombre del Controlador y el valor para generar QRCode al final de la barra de direcciones,Presione Enter para generar una imagen de código QR。
Otros suplementos
Este programa fue escrito hace medio año.,Tengo la impresión de que me encontré con varias situaciones e instalé los siguientes paquetes uno tras otro.,como referencia:
Fase de ejecución de ASP.NET Core 6.0.36
- x64 (Lado del desarrollo): aspnetcore-runtime-6.0.28-win-x64.exe
- Paquete de alojamiento (Borde IIS): dotnet-hosting-6.0.28-win.exe
"Enlace de referencia"
[…] QRCode 產生器的 API 後,摸不著頭緒要怎麼把程式變成 IIS […]