elsa-core/src/modules/Elsa.Http/ContentWriters/TextContentFactory.cs
Copilot 144edc3a85
Fix Content-Type header charset auto-appending in HTTP requests (#6676)
* Initial plan for issue

* Implement RawStringContent for fixing charset issue

Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
2025-05-24 21:39:31 +02:00

29 lines
839 B
C#

using System.Net.Mime;
using System.Text;
namespace Elsa.Http.ContentWriters;
/// <summary>
/// Creates a <see cref="StringContent"/> object for text/plain, text/richtext and text/html content types.
/// </summary>
public class TextContentFactory : IHttpContentFactory
{
/// <inheritdoc />
public IEnumerable<string> SupportedContentTypes => new[]
{
MediaTypeNames.Text.Plain,
MediaTypeNames.Text.RichText,
MediaTypeNames.Text.Html,
};
/// <inheritdoc />
public HttpContent CreateHttpContent(object content, string contentType)
{
var text = content as string ?? content.ToString();
if (string.IsNullOrWhiteSpace(contentType))
contentType = MediaTypeNames.Text.Plain;
return new RawStringContent(text!, Encoding.UTF8, contentType);
}
}