using Ganss.Xss; using Microsoft.AspNetCore.Mvc; using System.Text.Encodings.Web; namespace EnvelopeGenerator.Web.Controllers.Test; [ApiController] [Route("api/test/[controller]")] public class TestSanitizeController : ControllerBase { private readonly HtmlEncoder _htmlEncoder; private readonly HtmlSanitizer _sanitizer; public TestSanitizeController(HtmlEncoder htmlEncoder, HtmlSanitizer sanitizer) { _htmlEncoder = htmlEncoder; _sanitizer = sanitizer; } [HttpGet("sanitize")] public IActionResult Sanitize([FromQuery] string input) => Ok(new { input, Sanitized = _sanitizer.Sanitize(input), SanitizedDocument = _sanitizer.SanitizeDocument(input), SanitizedDom = _sanitizer.SanitizeDom(input) }); [HttpGet("encode")] public IActionResult Encoder([FromQuery] string input) => Ok(new { input, Encoded = _htmlEncoder.Encode(input) }); }