Czy jeden typ MIME jest lepszy, aby zapewnić zgodność z czytnikami RSS i innymi skrobakami?
Wydaje się, że opcje są następujące:
- text / xml
- tekst / rss + xml
Co ciekawe, Stackoverflow używa text / html.
rss
mime-types
Steve Claridge
źródło
źródło
text/xml
.Inni komentatorzy zwrócili uwagę, że jedynym poprawnym typem MIME jest
application/rss+xml,
.Jeśli jednak ustawiasz nagłówek accept dla klienta, to
Accept: application/rss+xml, application/rdf+xml;q=0.8, application/atom+xml;q=0.6, application/xml;q=0.4, text/xml;q=0.4
może być dobrym wyborem, ponieważ stwierdza, że akceptuje RSS, Atom i XML (w porządku malejącym lub według preferencji).
źródło
q
parametrze , więc dla uzyskania pożądanego efektu lepiej byłoby wysłaćAccept: application/rss+xml, application/rdf+xml, application/atom+xml, application/xml;q=0.9, text/xml;q=0.8
, co oznacza „Preferuj dowolny z poprawnych typów MIME dla kanałów. Jeśli nie możesz tego zaoferować, preferujapplication/xml
. Jeśli nie możesz tego zaoferować, wolisztext/xml
. W przeciwnym razie daj mi to, co masz ”Accept
nagłówków z przykładami popularnych kanałów w mojej odpowiedzi poniżej i wszystkie wróciłytext/xml
. Użyłem polecenia:curl -s -H 'Accept: application/rss+xml, application/rdf+xml, application/atom+xml, application/xml;q=0.9, text/xml;q=0.8' -H 'Content-Type: application/rss+xml' -I $f
Oto pragmatyczna odpowiedź: bez względu na to, jaka jest „poprawna” odpowiedź (i oczywiście toczy się na ten temat debata),
text/xml
jest typem używanym przez prawie wszystkie popularne kanały na wolności.Oto kilka, które sprawdziłem:
Dzięki temu możesz być pewien, że
text/xml
zostanie on poprawnie zinterpretowany przez powszechnie używanych klientów RSS.źródło
Najbardziej poprawne jest
application/rss+xml
Najbardziej kompatybilny jest
application/xml
Według W3C:
https://validator.w3.org/feed/docs/warning/UnexectedContentType.html
źródło
Wybierz aplikację MIME / rss + xml, aby być bezpiecznym, jeśli chcesz się upewnić, że Twój kanał jest zgodny z czytnikami RSS i innymi skrobakami. Tego właśnie używam.
źródło
Państwo mogli używać
text/xml
, ale odpowiedniego typu MIME będzieapplication/rss+xml
.źródło
application/xml
jest preferowany,text/xml
ponieważ XML nie jest zgodny z normalnymi regułami kodowania treści tekstowej. Może osadzić swoje kodowanie w swoich danych, co spowoduje problemy, jeśli serwery proxy będą próbować ślepo transkodować tekst. Innymi słowy, serwery proxy mają zachowywać dane bajt po bajcie.text / xml to jedyna poprawna odpowiedź. Typy MIME to system oparty na rejestracji. Istnieje oficjalna lista zarządzana przez IANA (Internet Assigned Numbers Authority) pod adresem http://www.iana.org/ assignments/media-types/media-types.xhtml
źródło