【问题标题】:Setting xml encoding attribute in prolog using .NET HttpClient使用 .NET HttpClient 在 prolog 中设置 xml 编码属性
【发布时间】:2023-04-02 10:26:01
【问题描述】:
有谁知道在使用 C# HttpClient 的 PostAsXmlAsync 方法时是否可以在 prolog 中设置编码属性。
当我在 Fiddler 中查看请求时,我可以看到内容类型 http 标头中的编码,但我需要在 prolog 中像这样:
<?xml version="1.0" encoding="UTF-8"?>
【问题讨论】:
标签:
c#
xml
dotnet-httpclient
xml-encoding
【解决方案1】:
XML 声明(您称之为“序言”)是可选的。当它声明版本 1.0 并编码 UTF-8 时,它甚至是多余的,因为这些值是默认值。
在 HTTP 传输中,有关有效负载编码的权威信息在 Content-Type 标头中给出,因此实际上不要在有效负载本身中发送可能冲突的信息。
所以在我看来,HttpClientExtensions 类似乎做了正确的事情。