HTTP协议:Content-Type

Content-Type 实体头部用于指示资源的MIME类型 media type 。

在响应中,Content-Type标头告诉客户端实际返回的内容的内容类型。浏览器会在某些情况下进行MIME查找,并不一定遵循此标题的值; 为了防止这种行为,可以将标题 X-Content-Type-Options 设置为 nosniff。

在请求中 (如POST 或 PUT),客户端告诉服务器实际发送的数据类型。

语法

1
2
Content-Type: text/html; charset=utf-8
Content-Type: multipart/form-data; boundary=something

multipart/form-data

使用 multipart/form-data 上传File、Blob和String数据
FormData 对象的字段类型可以是 Blob, File, 或者 String: 如果它的字段类型不是Blob也不是File,则会被转换成字符串类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var formData = new FormData();

formData.append("username", "Groucho");
formData.append("accountnum", 123456); // number 123456 is immediately converted to a string "123456"

// HTML file input, chosen by user
formData.append("userfile", fileInputElement.files[0]);

// JavaScript file-like object
var content = '<a id="a"><b id="b">hey!</b></a>'; // the body of the new file...
var blob = new Blob([content], { type: "text/xml"});

formData.append("webmasterfile", blob);

var request = new XMLHttpRequest();
request.open("POST", "http://foo.com/submitform.php");
request.send(formData);

–> Using_FormData_Objects <–

application/x-www-from-urlencoded

将表单内的数据转换为键值对,比如,a=1&b=2

application/octet-stream

上传二进制数据,通常用来上传文件,由于没有键值,所以,一次只能上传一个文件。

application/json

json格式字符串

raw

可以上传任意格式的文本,可以上传text、json、xml、html、javascript等

其它

MIME_types
https://tool.oschina.net/commons

参考资料

https://developer.mozilla.org/zh-CN/docs/Web/API/FormData/Using_FormData_Objects

https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Methods/POST

https://www.runoob.com/http/http-content-type.html

https://blog.csdn.net/ye1992/article/details/49998511


HTTP协议:Content-Type
http://example.com/20201228-HTTP-Content-Type/
作者
csorz
发布于
2020年12月28日
许可协议