对于HTML表单。我很困惑,我正在尝试设置enctype ='application/octet-stream',但是服务器接收到的内容类型为'application/x-www-form-urlencoded'(默认值)的请求。

最佳答案

enctype属性指定浏览器向服务器提交表单数据时使用的内容类型(以HTTP术语表示,如Content-Type header 所示)。

但是,spec在此上下文中仅定义了两种内容类型,application/x-www-form-urlencoded(默认值)和multipart/form-data,并添加:“未指定其他内容类型的行为。”实践中发生的是,浏览器使用默认值以其他值静默忽略enctype属性。例如,您可以看到此信息检查Firebug中的文档:检查form元素,“DOM” Pane 包含属性enctype-具有默认值。在Web浏览器中,通常对标记错误保持沉默。

在这种情况下,application/octet-stream类型不是很有用,因为如果浏览器发送了此类信息,则将有效地说“这是未知(或未指定)结构的二进制数据块”。

关于html - content-type和enctype有什么区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12339770/

10-11 09:31