/
mimetype.go
231 lines (226 loc) · 7.44 KB
/
mimetype.go
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
package builtin
import (
. "github.com/infrago/base"
"github.com/infrago/infra"
)
func init() {
mimes := Map{
"text": "text/explain",
"html": "text/html",
"xml": "application/xml",
"json": "application/json",
"file": "application/octet-stream",
"down": "application/octet-stream",
"script": "text/html",
"view": "text/html",
"323": "text/h323",
"acx": "application/internet-property-stream",
"ai": "application/postscript",
"aif": "audio/x-aiff",
"aifc": "audio/x-aiff",
"aiff": "audio/x-aiff",
//"apk": "application/vnd.android",
"apk": "application/vnd.android.package-archive",
"asf": "video/x-ms-asf",
"asr": "video/x-ms-asf",
"asx": "video/x-ms-asf",
"mp4": "video/mp4",
"au": "audio/basic",
"avi": "video/x-msvideo",
"axs": "application/olescript",
"bas": "text/plain",
"bcpio": "application/x-bcpio",
"bin": "application/octet-stream",
"bmp": "image/bmp",
"c": "text/plain",
"cat": "application/vnd.ms-pkiseccat",
"cdf": "application/x-cdf",
"cer": "application/x-x509-ca-cert",
"class": "application/octet-stream",
"clp": "application/x-msclip",
"cmx": "image/x-cmx",
"cod": "image/cis-cod",
"cpio": "application/x-cpio",
"crd": "application/x-mscardfile",
"crl": "application/pkix-crl",
"crt": "application/x-x509-ca-cert",
"csh": "application/x-csh",
"css": "text/css",
"dcr": "application/x-director",
"der": "application/x-x509-ca-cert",
"dir": "application/x-director",
"dll": "application/x-msdownload",
"dms": "application/octet-stream",
"doc": "application/msword",
"dot": "application/msword",
"dvi": "application/x-dvi",
"dxr": "application/x-director",
"eps": "application/postscript",
"etx": "text/x-setext",
"evy": "application/envoy",
"exe": "application/octet-stream",
"fif": "application/fractals",
"flr": "x-world/x-vrml",
"gif": "image/gif",
"gtar": "application/x-gtar",
"gz": "application/x-gzip",
"h": "text/plain",
"hdf": "application/x-hdf",
"hlp": "application/winhlp",
"hqx": "application/mac-binhex40",
"hta": "application/hta",
"htc": "text/x-component",
"htm": "text/html",
"htt": "text/webviewhtml",
"ico": "image/x-icon",
"ief": "image/ief",
"iii": "application/x-iphone",
"ins": "application/x-internet-signup",
// "ipa": "application/iphone-package-archive",
"ipa": "application/vnd.iphone",
"isp": "application/x-internet-signup",
"jfif": "image/pipeg",
"jpg": "image/jpeg",
// "jpe": "image/jpeg",
"jpeg": "image/jpeg",
"js": "application/x-javascript",
"latex": "application/x-latex",
"lha": "application/octet-stream",
"lsf": "video/x-la-asf",
"lsx": "video/x-la-asf",
"lzh": "application/octet-stream",
"m13": "application/x-msmediaview",
"m14": "application/x-msmediaview",
"m3u": "audio/x-mpegurl",
"m3u8": "application/vnd.apple.mpegurl",
"ts": "video/x-mpeg",
"man": "application/x-troff-man",
"mdb": "application/x-msaccess",
"me": "application/x-troff-me",
"mht": "message/rfc822",
"mhtml": "message/rfc822",
"mid": "audio/mid",
"mny": "application/x-msmoney",
"mov": "video/quicktime",
"movie": "video/x-sgi-movie",
"mp2": "video/mpeg",
"mp3": "audio/mpeg",
"mpa": "video/mpeg",
"mpe": "video/mpeg",
"mpeg": "video/mpeg",
"mpg": "video/mpeg",
"mpp": "application/vnd.ms-project",
"mpv2": "video/mpeg",
"ms": "application/x-troff-ms",
"mvb": "application/x-msmediaview",
"nws": "message/rfc822",
"oda": "application/oda",
"p10": "application/pkcs10",
"p12": "application/x-pkcs12",
"p7b": "application/x-pkcs7-certificates",
"p7c": "application/x-pkcs7-mime",
"p7m": "application/x-pkcs7-mime",
"p7r": "application/x-pkcs7-certreqresp",
"p7s": "application/x-pkcs7-signature",
"pbm": "image/x-portable-bitmap",
"pdf": "application/pdf",
"pfx": "application/x-pkcs12",
"pgm": "image/x-portable-graymap",
"pko": "application/ynd.ms-pkipko",
"pma": "application/x-perfmon",
"pmc": "application/x-perfmon",
"pml": "application/x-perfmon",
"pmr": "application/x-perfmon",
"pmw": "application/x-perfmon",
"png": "image/png",
"pnm": "image/x-portable-anymap",
"pot": "application/vnd.ms-powerpoint",
"ppm": "image/x-portable-pixmap",
"pps": "application/vnd.ms-powerpoint",
"ppt": "application/vnd.ms-powerpoint",
"prf": "application/pics-rules",
"ps": "application/postscript",
"pub": "application/x-mspublisher",
"qt": "video/quicktime",
"ra": "audio/x-pn-realaudio",
"ram": "audio/x-pn-realaudio",
"ras": "image/x-cmu-raster",
"rgb": "image/x-rgb",
"rmi": "audio/mid",
"roff": "application/x-troff",
"rtf": "application/rtf",
"rtx": "text/richtext",
"scd": "application/x-msschedule",
"sct": "text/scriptlet",
"setpay": "application/set-payment-initiation",
"setreg": "application/set-registration-initiation",
"sh": "application/x-sh",
"shar": "application/x-shar",
"sit": "application/x-stuffit",
"snd": "audio/basic",
"spc": "application/x-pkcs7-certificates",
"spl": "application/futuresplash",
"src": "application/x-wais-source",
"sst": "application/vnd.ms-pkicertstore",
"stl": "application/vnd.ms-pkistl",
"stm": "text/html",
"svg": "image/svg+xml",
"sv4cpio": "application/x-sv4cpio",
"sv4crc": "application/x-sv4crc",
"swf": "application/x-shockwave-flash",
"t": "application/x-troff",
"tar": "application/x-tar",
"tcl": "application/x-tcl",
"tex": "application/x-tex",
"texi": "application/x-texinfo",
"texinfo": "application/x-texinfo",
"tgz": "application/x-compressed",
"tif": "image/tiff",
"tiff": "image/tiff",
"tr": "application/x-troff",
"trm": "application/x-msterminal",
"tsv": "text/tab-separated-values",
"txt": "text/plain",
"uls": "text/iuls",
"ustar": "application/x-ustar",
"vcf": "text/x-vcard",
"vrml": "x-world/x-vrml",
"wav": "audio/x-wav",
"aac": "audio/aac",
"ape": "audio/ape",
"flac": "audio/flac",
"dsd": "audio/dsd",
"sacd": "audio/sacd",
"wcm": "application/vnd.ms-works",
"wdb": "application/vnd.ms-works",
"wks": "application/vnd.ms-works",
"wmf": "application/x-msmetafile",
"wps": "application/vnd.ms-works",
"wri": "application/x-mswrite",
"wrl": "x-world/x-vrml",
"wrz": "x-world/x-vrml",
"xaf": "x-world/x-vrml",
"xbm": "image/x-xbitmap",
"xla": "application/vnd.ms-excel",
"xlc": "application/vnd.ms-excel",
"xlm": "application/vnd.ms-excel",
"xls": "application/vnd.ms-excel",
"xlt": "application/vnd.ms-excel",
"xlw": "application/vnd.ms-excel",
"xof": "x-world/x-vrml",
"xpm": "image/x-xpixmap",
"xwd": "image/x-xwindowdump",
"z": "application/x-compress",
"zip": "application/zip",
"": "application/octet-stream",
"*": "application/octet-stream",
}
for k, v := range mimes {
if vv, ok := v.(string); ok {
infra.Register(k, infra.Mime{vv}, false)
}
if vvs, ok := v.([]string); ok {
infra.Register(k, infra.Mime(vvs), false)
}
}
}