Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Předchozí verze Následující verze | |||
— | špatná-praxe:http-content-type [2017/12/01 15:54] – [Chyná hlavička HTTP Content-Type] Jakub Klímek | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
+ | ====== Chyná hlavička HTTP Content-Type ====== | ||
+ | Otevřená data se vystavují na webu a jsou přístupná typicky přes protokol HTTP(S). | ||
+ | Ten má svá pravidla, která je pro správné fungování webu nutné dodržovat. | ||
+ | Jedno z pravidel se týká indikace toho, jaký je formát zdroje (stránky, souboru) je přenášen. | ||
+ | Webový server tedy v odpovědi na požadavek klienta na stažení souboru posílá nejen obsah samotný, ale i metainformace, | ||
+ | Ty si můžeme zobrazit pomocí standardního nástroje curl: '' | ||
+ | V jedné z nejdůležitějších hlaviček server klientovi sděluje, v jakém formátu jsou přenášená data. | ||
+ | Jedná se o HTTP hlavičku '' | ||
+ | Je-li tato hlavička nastavena špatně, může dojít k chybné interpretaci přenášených dat. | ||
+ | Hodnota v této hlavičce by tedy měla odpovídat jak přenášenému obsahu, tak také hodnotě uvedené v metadatech distribuce datové sady. | ||
+ | Toto se týká každého zdroje na webu, v kontextu otevřených dat tedy zejména souborů s daty, datových schémat, podmínek užití a dokumentací datových sad. | ||
+ | Důležitou roli zde hraje taky správně [[špatná-praxe: | ||
+ | ===== Seznam nejpoužívanějších datových typů a odpovídajících MIME typů ===== | ||
+ | [[https:// | ||
+ | ^ Formát dat ^ MIME-typ | ||
+ | | CSV soubor | ||
+ | | Schéma pro CSV dle [[https:// | ||
+ | | Schéma pro CSV dle [[https:// | ||
+ | | JSON soubor | ||
+ | | Schéma pro JSON soubor | ||
+ | | XML soubor s převážně strukturovaným obsahem | ||
+ | | XML soubor s převážně textovým obsahem | ||
+ | | Schéma pro XML dle [[https:// | ||
+ | | RDF soubor v serializaci [[https:// | ||
+ | | RDF soubor v serializaci [[https:// | ||
+ | | RDF soubor v serializaci [[https:// | ||
+ | | RDF soubor v serializaci [[https:// | ||
+ | | RDF soubor v serializaci [[https:// | ||
+ | | RDF soubor v serializaci [[https:// | ||
+ | |||
+ | ===== Seznam nejčastějších chybně používaných MIME typů ===== | ||
+ | Zde uvádíme MIME typy, se kterými se nejčastěji setkáváme u chybně poskytovatných otevřených dat. | ||
+ | |||
+ | ^ Formát dat ^ MIME-typ | ||
+ | | HTML stránka | ||
+ | | Text | '' | ||
+ | | Proud osmic (bajtů) | ||
+ | |||
+ | ===== Konfigurace webového serveru pro správnou indikaci MIME typů ===== | ||
+ | Aby byl MIME typ správně indikován, je obvykle třeba korektně nastavit webový server ([[http:// | ||
+ | Pokud jde o staticky poskytované soubory, používá se obvykle tabulka párující přípony souborů a MIME typy. | ||
+ | Je třeba dát pozor na to, že soubory se stejnou příponou mohou odpovídat různým MIME typům. | ||
+ | Například obecný JSON soubor má příponu '' | ||
+ | Je pak třeba vhodně strukturovat konfiguraci serveru, případně umístění souborů v souborovém systému serveru. | ||
+ | Pokud se jedná o dynamicky poskytovaná data, hlavičku Content-Type nastvuje služba, která data generuje. | ||
+ | |||
+ | ===== MIME typy a kódování ===== | ||
+ | Otevřená data se obvykle reprezentují v textových formátech. | ||
+ | Znaky v těchto souborech pak z pravidla používají kódování '' | ||
+ | Je proto vhodné HTTP hlavičku Content-Type rozšířit o informaci indikující použité kódování, | ||
+ | Například pro webový server '' |