我正在尝试实现一个基本的http服务器代码来呈现Web表单并在用户点击提交时处理发布的数据。代码托管在此处:http://www.codeproject.com/Articles/137979/Simple-HTTP-Server-in-C
然而,我正在以引用可打印的格式发布数据,我不想搞砸。如何以UTF-8编码包装所有内容?
也许您可以解决我的特定问题,或者您可以建议采用不同的方法来呈现Web表单并处理提交的数据。不管怎样,谢谢你...... Sample webform and post data
答案 0 :(得分:0)
你正在搅拌苹果和橘子。内容传输编码将字符数据封装在健壮的包装器中,该包装器在协议级别上逃避任何具有重要意义的字符。这是,无论数据中的字符集是。在引用的可打印数据中,您可以在任何字符集中找到字符数据(或二进制数据,但是base64通常是选择的内容传输编码)。
重申一下,你没有得到任何一个/或者选择 - 你收到的将具有内容传输编码的字符数据(这可能是透明的; MIME会调用这个&#34)虽然" 8bit"和#34; 7bit"内容传输编码也是透明的,虽然只适用于某些约束类型的数据)和字符编码(可能是" US-ASCII"也就是普通的旧7位字符数据,字符库非常有限,或者" ISO-8859-1"它是8位因此有一个稍大的曲目,但仍然受到限制;或者是一种Unicode编码,例如" UTF-8")。
如果不处理MIME的这个方面,你真的无法处理HTTP。