-
Notifications
You must be signed in to change notification settings - Fork 4
/
919.txt
121 lines (86 loc) · 6.03 KB
/
919.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
[11] [DFN[[CODE(MIME)@en[[[multipart/mixed]]]]]] は、
複数の[[本体部分]]の混合を表す[[MIME型]]です。
[12] 純粋な混合を表しており、それらの関係性は特にありません。
[13] [[電子メール]]に[[添付ファイル]]を含めたい時によく用いられます。
* 仕様書
[REFS[
- [8] [CITE@en[RFC 2046 - Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types]] ([TIME[2015-03-22 13:14:46 +09:00]] 版) <http://tools.ietf.org/html/rfc2046#section-5.1.3>
]REFS]
* 意味
[9] [CODE(MIME)@en[[[multipart/mixed]]]] は、
各[[本体部分]]が独立しており、
特定の順序で含める必要がある時に使うものです [SRC[>>8]]。
* 関連
[10] 未知の [CODE(MIME)@en[[[multipart/*]]]] [[MIME型]]は、
[CODE(MIME)@en[[[multipart/mixed]]]] として扱わなければなりません [SRC[>>8]]。
;; [14] [[Web]] では普通 [CODE(MIME)@en[[[multipart/mixed]]]] は実装されていませんので、
未知の [CODE(MIME)@en[[[multipart/*]]]] も実装されず、いずれも[[ダウンロード]]として扱われることになります。
[15] [[プッシュ配信]]のために [CODE(MIME)@en[[[multipart/x-mixed-replace]]]] が使われることがあります。
* 歴史
[1] [CITE@en[RFC 5621 - Message Body Handling in the Session Initiation Protocol (SIP)]]
([TIME[2009-09-12 07:37:40 +09:00]] 版)
<http://tools.ietf.org/html/rfc5621#section-4>
[2] [CITE[''''''[''''''whatwg'''''']'''''' Proposal: Loading and executing script as quickly as possible using multipart/mixed]]
( ([TIME[2012-12-04 00:39:17 +09:00]] 版))
<http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-December/038223.html>
[3] [CITE@en[RFC 4387 - Internet X.509 Public Key Infrastructure Operational Protocols: Certificate Store Access via HTTP]]
( ([TIME[2014-06-08 08:24:17 +09:00]] 版))
<http://tools.ietf.org/html/rfc4387#page-4>
[4] [CITE@en[RFC 5621 - Message Body Handling in the Session Initiation Protocol (SIP)]]
( ([TIME[2014-09-14 07:55:49 +09:00]] 版))
<http://tools.ietf.org/html/rfc5621#section-4.1>
[5] [CITE@en[RFC 5621 - Message Body Handling in the Session Initiation Protocol (SIP)]]
( ([TIME[2014-09-14 07:55:49 +09:00]] 版))
<http://tools.ietf.org/html/rfc5621#section-8.2>
[6] [CITE@en[RFC 5537 - Netnews Architecture and Protocols]]
( ([TIME[2014-09-14 17:08:11 +09:00]] 版))
<http://tools.ietf.org/html/rfc5537#section-5.2.1.1>
[7] [CITE@ja[Batch Requests - Google BigQuery — Google Cloud Platform]]
( ([TIME[2014-12-18 02:33:04 +09:00]] 版))
<https://cloud.google.com/bigquery/batch>
[16] [CITE@en[RFC 5621 - Message Body Handling in the Session Initiation Protocol (SIP)]]
([TIME[2015-06-21 16:17:31 +09:00]] 版)
<https://tools.ietf.org/html/rfc5621>
[17] [CITE@en[RFC 7681 - Email Exchange of Secondary School Transcripts]]
([TIME[2015-10-24 10:57:24 +09:00]] 版)
<https://tools.ietf.org/html/rfc7681>
[FIG(quote)[
[FIGCAPTION[
[18] [CITE@en[Batching Requests | Gmail API | Google Developers]]
([TIME[2015-10-08 03:21:07 +09:00]] 版)
<https://developers.google.com/gmail/api/guides/batch>
]FIGCAPTION]
> A batch request is a single standard HTTP request containing multiple Gmail API calls, using the multipart/mixed content type. Within that main HTTP request, each of the parts contains a nested HTTP request.
> Each part begins with its own Content-Type: application/http HTTP header. It can also have an optional Content-ID header. However, the part headers are just there to mark the beginning of the part; they're separate from the nested request. After the server unwraps the batch request into separate requests, the part headers are ignored.
]FIG]
[FIG(quote)[
[FIGCAPTION[
[19] [CITE@en[RFC 7030 - Enrollment over Secure Transport]]
([TIME[2016-06-19 16:27:56 +09:00]])
<https://tools.ietf.org/html/rfc7030#section-4.4.2>
]FIGCAPTION]
> If the request is successful, the server response MUST have an HTTP
> 200 response code with a content-type of "multipart/mixed" consisting
> of two parts: one part is the private key data and the other part is
> the certificate data.
>
]FIG]
[20] [CITE@en[XProc 2.0: Standard Step Library]]
([TIME[2016-07-21 14:39:32 +09:00]])
<https://www.w3.org/TR/2016/NOTE-xproc20-steps-20160721/#c.request_body>
[FIG(quote)[
[FIGCAPTION[
[21] [CITE@ja[Google アナリティクス API リクエストのバッチ処理 | アナリティクス Real Time Reporting API | Google Developers]]
( ([TIME[2016-09-30 03:30:47 +09:00]]))
<https://developers.google.com/analytics/devguides/reporting/realtime/v3/batching>
]FIGCAPTION]
> バッチ リクエストは、multipart/mixed コンテンツ タイプを使用した、複数の Google アナリティクス API 呼び出しを含む 1 つの標準的な HTTP リクエストです。このメインの HTTP リクエストを構成する各パートには、ネストされた HTTP リクエストが含まれます。
> 各パーツはそれぞれ Content-Type: application/http HTTP ヘッダーで始まり、オプションの Content-ID ヘッダーを指定することもできます。ただし、パーツヘッダーはパーツの開始箇所を示すためだけに存在していて、ネストされたリクエストとは分かれています。サーバーが一括リクエストを別々のリクエストにアンラップした後、パーツヘッダーは無視されます。
> 各パーツのボディ自体が完全な HTTP リクエストで、独自の動詞、URL、ヘッダー、ボディが含まれます。HTTP リクエストには URL のパス部分のみを含める必要があり、完全な URL は、一括リクエストでは許可されていません。
]FIG]
[22] [CITE@ja[Indexing API の使用 | 検索 | Google Developers]]
([TIME[2019-12-18 02:56:05 +09:00]])
<https://developers.google.com/search/apis/indexing-api/v3/using-api>
[23] [CITE@en[Sending batch requests | Cloud Storage | Google Cloud]]
([TIME[2019-11-16 06:23:28 +09:00]])
<https://cloud.google.com/storage/docs/json_api/v1/how-tos/batch>