C# 简单web服务器:表单post数据以引用的可打印格式编码

C# 简单web服务器:表单post数据以引用的可打印格式编码,c#,webforms,character-encoding,mime,postdata,C#,Webforms,Character Encoding,Mime,Postdata,我正在尝试实现一个基本的http服务器代码,以便在用户点击submit时呈现web表单并处理发布的数据。代码托管在此处: 然而,我得到的是引用的可打印格式的post数据,我不想弄乱它。如何将所有内容包装成UTF-8编码 也许你可以解释一下我的特殊问题,或者你可以建议一种不同的方法来呈现web表单和处理提交的数据。无论如何谢谢你。。。 你在把苹果和桔子混合。内容传输编码将字符数据封装在一个健壮的包装器中,该包装器可以转义协议级别上具有重要意义的任何字符。这与数据中的字符集无关。在引用的可打印数据中

我正在尝试实现一个基本的http服务器代码,以便在用户点击submit时呈现web表单并处理发布的数据。代码托管在此处:

然而,我得到的是引用的可打印格式的post数据,我不想弄乱它。如何将所有内容包装成UTF-8编码

也许你可以解释一下我的特殊问题,或者你可以建议一种不同的方法来呈现web表单和处理提交的数据。无论如何谢谢你。。。
你在把苹果和桔子混合。内容传输编码将字符数据封装在一个健壮的包装器中,该包装器可以转义协议级别上具有重要意义的任何字符。这与数据中的字符集无关。在引用的可打印数据中,您可以在任何字符集中找到字符数据(或二进制数据,尽管base64通常是选择的内容传输编码)

因此,重申一下,您不会得到非此即彼的选择——您收到的字符数据将有一个内容传输编码(可以是透明的;MIME称之为“二进制”,尽管“8位”和“7位”内容传输编码也是透明的,尽管只适用于某些受约束的数据类型)和字符编码(可以是“US-ASCII”即普通的7位字符数据,具有非常有限的字符集,或者是“ISO-8859-1”,它是8位的,因此具有稍大的字符集,但仍然受到限制;或者是Unicode编码之一,如“UTF-8”)


如果不同时处理MIME的这一方面,您真的无法处理HTTP。

我知道在某个时候我误解了smth。关于封装。感谢您澄清!但是似乎没有合适的工具来打开该字符数据。您能建议转换引用的可打印帖子内容吗?引用的printable编码非常简单,在的第6.7节中有完整的记录;但简而言之,任何字节都可以被编码为ASCII序列,由一个等号和两个ASCII十六进制数组成。此外,等号和换行的序列将被简单地删除,以允许以有限的宽度进行透明换行。我是ure要找到一个实现这一点的C#库并不难,但它不是我熟悉的语言。