Files
Nexus.Reader/src/NexusReader.Infrastructure/Services/HtmlSanitizerService.cs
T

31 lines
779 B
C#

using Ganss.Xss;
using NexusReader.Application.Abstractions.Services;
namespace NexusReader.Infrastructure.Services;
/// <summary>
/// Infrastructure implementation of ISanitizerService using the Ganss.Xss HtmlSanitizer library.
/// </summary>
public class HtmlSanitizerService : ISanitizerService
{
private readonly HtmlSanitizer _sanitizer;
public HtmlSanitizerService()
{
_sanitizer = new HtmlSanitizer();
// Use default configuration which is extremely secure and strips
// all JavaScript (script tags, onerror, onload, iframe, etc.)
}
public string Sanitize(string input)
{
if (string.IsNullOrEmpty(input))
{
return input;
}
return _sanitizer.Sanitize(input);
}
}