Widziałem application/csv
używane, a także text/csv
.
Co za różnica? Czy jest jakaś różnica? Czy to ważne, o ile żądanie pasuje do czegoś, co jest dostępne? Czy są wymienne?
Widziałem application/csv
używane, a także text/csv
.
Co za różnica? Czy jest jakaś różnica? Czy to ważne, o ile żądanie pasuje do czegoś, co jest dostępne? Czy są wymienne?
Odpowiedzi:
Jest RFC, który obejmuje to i mówi, aby użyćtext/csv
.
To RFC aktualizuje RFC 4180.
Ostatnio odkryłem wyraźny typ mimetyczny dla aplikacji Excel / vnd.ms-excel. Został zarejestrowany w IANA w 96 roku. Zwróć uwagę na obawy związane z byciem na łasce nadawcy i naruszeniem komputera .
Typ nośnika: application / vnd.ms-excel
Nazwa Microsoft Excel (tm)
Wymagane parametry: brak
Parametry opcjonalne: nazwa
Uwagi dotyczące kodowania: preferowany base64
Względy bezpieczeństwa: Podobnie jak w przypadku większości typów aplikacji, dane te są przeznaczone do interpretacji przez program, który rozumie dane w systemie odbiorcy. Odbiorcy muszą zrozumieć, że są na „łasce” nadawcy, odbierając ten typ danych, ponieważ dane zostaną wykonane w ich systemie, a bezpieczeństwo ich komputerów może zostać naruszone.
OID {org-id ms-files (4) ms-excel (3)}
Arkusz kalkulacyjny typu obiektu
Komentarze Ten typ nośnika / identyfikator OID służy do ogólnej identyfikacji programu Microsoft Excel (tj. Niezależnie od wersji, podtypu lub formatu platformy).
Nie wiedziałem, że rozszerzenia dostawców są dozwolone. Sprawdź tę odpowiedź, aby dowiedzieć się więcej - dzięki starbeamrainbowlabs za odniesienie.
vnd.ms-excel
. +1, pomyślałem, że to ciekawa dodatkowa uwaga;)
Powinieneś używać „text / csv” zgodnie z RFC 4180 .
Dziwne zachowanie z MS Excel
: Jeśli eksportuję do formatu „tekstowego, rozdzielanego przecinkami ( csv
)”, to jest ten typ MIME, który otrzymuję po przesłaniu na mój serwer:
[name] => data.csv
[type] => application/vnd.ms-excel
Wydaje się, że Microsoft znów robi swoje, bez względu na istniejące standardy: https://en.wikipedia.org/wiki/Comma-separated_values
Moi użytkownicy mogą przesyłać pliki CSV i text/csv
i application/csv
nie pojawiają się teraz. Są to te zidentyfikowane przez finfo () :
text/plain
text/x-csv
A są to te przesyłane przez przeglądarkę:
text/plain
application/vnd.ms-excel
text/x-csv
Następujące typy nie pojawiły się, ale mogły:
application/csv
application/x-csv
text/csv
text/comma-separated-values
text/x-comma-separated-values
text/tab-separated-values
Dla każdego, kto zmaga się z Google API mimeType dla plików * .csv. Znalazłem listę typów MIME dla plików dokumentów Google api (popatrz na wycięty wynik)
<table border="1"><thead><tr><th>Google Doc Format</th><th>Conversion Format</th><th>Corresponding MIME type</th></tr></thead><tbody><tr><td>Documents</td><td>HTML</td><td>text/html</td></tr><tr></tr><tr><td></td><td>HTML (zipped)</td><td>application/zip</td></tr><tr><td></td><td>Plain text</td><td>text/plain</td></tr><tr><td></td><td>Rich text</td><td>application/rtf</td></tr><tr><td></td><td>Open Office doc</td><td>application/vnd.oasis.opendocument.text</td></tr><tr><td></td><td>PDF</td><td>application/pdf</td></tr><tr><td></td><td>MS Word document</td><td>application/vnd.openxmlformats-officedocument.wordprocessingml.document</td></tr><tr><td></td><td>EPUB</td><td>application/epub+zip</td></tr><tr><td>Spreadsheets</td><td>MS Excel</td><td>application/vnd.openxmlformats-officedocument.spreadsheetml.sheet</td></tr><tr><td></td><td>Open Office sheet</td><td>application/x-vnd.oasis.opendocument.spreadsheet</td></tr><tr><td></td><td>PDF</td><td>application/pdf</td></tr><tr><td></td><td>CSV (first sheet only)</td><td>text/csv</td></tr><tr><td></td><td>TSV (first sheet only)</td><td>text/tab-separated-values</td></tr><tr><td></td><td>HTML (zipped)</td><td>application/zip</td></tr><tr></tr><tr><td>Drawings</td><td>JPEG</td><td>image/jpeg</td></tr><tr><td></td><td>PNG</td><td>image/png</td></tr><tr><td></td><td>SVG</td><td>image/svg+xml</td></tr><tr><td></td><td>PDF</td><td>application/pdf</td></tr><tr><td>Presentations</td><td>MS PowerPoint</td><td>application/vnd.openxmlformats-officedocument.presentationml.presentation</td></tr><tr><td></td><td>Open Office presentation</td><td>application/vnd.oasis.opendocument.presentation</td></tr><tr></tr><tr><td></td><td>PDF</td><td>application/pdf</td></tr><tr><td></td><td>Plain text</td><td>text/plain</td></tr><tr><td>Apps Scripts</td><td>JSON</td><td>application/vnd.google-apps.script+json</td></tr></tbody></table>
Źródło tutaj: https://developers.google.com/drive/v3/web/manage-downloads#downloading_google_documents tabelę pod: „Formaty Dokumentów Google i obsługiwane eksportowanie map typów MIME do siebie w następujący sposób”
Jest też inna lista
<table border="1"><thead><tr><th>MIME Type</th><th>Description</th></tr></thead><tbody><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>audio</span></code></td><td></td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>document</span></code></td><td>Google Docs</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>drawing</span></code></td><td>Google Drawing</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>file</span></code></td><td>Google Drive file</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>folder</span></code></td><td>Google Drive folder</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>form</span></code></td><td>Google Forms</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>fusiontable</span></code></td><td>Google Fusion Tables</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>map</span></code></td><td>Google My Maps</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>photo</span></code></td><td></td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>presentation</span></code></td><td>Google Slides</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>script</span></code></td><td>Google Apps Scripts</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>site</span></code></td><td>Google Sites</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>spreadsheet</span></code></td><td>Google Sheets</td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>unknown</span></code></td><td></td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>video</span></code></td><td></td></tr><tr><td><code><span>application/vnd.<wbr>google-apps.<wbr>drive-sdk</span></code></td><td>3rd party shortcut</td></tr></tbody></table>
Źródło tutaj: https://developers.google.com/drive/v3/web/mime-types
Ale pierwszy był bardziej pomocny w moim przypadku użycia.
Szczęśliwego kodowania;)