W poście na blogu używam następującego PHP, aby ustawić typ zawartości odpowiedzi:
header('content-type: application/json; charset=utf-8');
Właśnie komentarz na to stanowisko, mówiąc, że content-type
musi być kapitalizowane, Content-type
. Czy to jest poprawne? Wydaje mi się, że działa ze wszystkimi małymi literami i założyłem, że nagłówki HTTP nie uwzględniają wielkości liter. A może po prostu działa, ponieważ przeglądarki są fajne?
http
http-headers
Svish
źródło
źródło
Odpowiedzi:
W nazwach nagłówków nie jest rozróżniana wielkość liter.
Z RFC 2616 - „Protokół przesyłania hipertekstu - HTTP / 1.1” , sekcja 4.2, „Nagłówki wiadomości” :
Aktualizacja RFC 7230 nie zawiera żadnych zmian w stosunku do RFC 2616 w tej części.
źródło
Nazwy nagłówków HTTP nie rozróżniają wielkości liter, zgodnie z RFC 2616 :
4.2:
( Wartości pól mogą, ale nie muszą uwzględniać wielkości liter).
Jeśli ufasz, że główne przeglądarki tego przestrzegają, wszystko gotowe.
BTW, w odróżnieniu od większości HTTP, metody (czasowniki) są wielkość liter:
5.1.1 Metoda
źródło
tldr; zarówno nagłówki HTTP / 1.1, jak i HTTP / 2 nie rozróżniają wielkości liter.
Zgodnie z RFC 7230 (HTTP / 1.1):
https://tools.ietf.org/html/rfc7230#section-3.2
Ponadto RFC 7540 (HTTP / 2):
https://tools.ietf.org/html/rfc7540#section-8.1.2
źródło
header('Content-type: image/png')
nie działał z PHP 5.5 obsługującym IE11, ponieważ w strumieniu obrazu pokazano jako tekstheader('Content-Type: image/png')
działał, jak na obrazie pojawił się jako obrazJedyną różnicą jest duża litera „T”.
źródło
Nie rozróżniają wielkości liter. W rzeczywistości serwer WWW NodeJS jawnie konwertuje je na małe litery, zanim udostępni je w obiekcie żądania.
źródło
RFC dla HTTP (jak cytowano powyżej) dyktuje, że w nagłówkach nie jest rozróżniana wielkość liter, jednak przekonasz się, że w niektórych przeglądarkach (patrzę na ciebie, IE), pisanie wielkimi literami każdego słowa jest najlepsze:
vs
To nie jest standard „HTTP”, ale po prostu kolejne dziwactwo przeglądarki, o czym my, programiści, musimy pomyśleć.
źródło
oficjalnie w nagłówkach nie jest rozróżniana wielkość liter, jednak powszechną praktyką jest pisanie wielkimi literami każdego słowa.
ale ponieważ jest to powszechna praktyka, niektóre programy, takie jak IE, zakładają, że nagłówki są pisane wielkimi literami.
więc chociaż doktorzy mówią, że nie rozróżniają wielkości liter, źli programiści zasadniczo zmienili dokumenty.
źródło
w nagłówku słowa nie rozróżniana jest wielkość liter, ale po prawej stronie, podobnie jak typ zawartości, dobrą praktyką jest pisanie go w ten sposób, ponieważ rozróżnia duże i małe litery. jak mój przykład poniżej
źródło