2010-04-08 4 views
46

Czy istnieje RFC, oficjalny standard lub szablon do tworzenia ciągu agenta użytkownika? User-agent string iPhone wydaje się dziwne ...Jaki jest standardowy format ciągu użytkownika agenta przeglądarki?

Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_1_2 jak Mac OS X; en-us) AppleWebKit/528,18 (KHTML, jak Gecko) Version/4.0 Mobile/7D11 Safari/528,16

+1

iPhone poważnie stawia 'Mozilla/5.0' na początku to jest agenta użytkownika? – Tarka

+7

@Slokun dlaczego niespodzianka? IE user-agent zaczyna się od 'Mozilla/4.0'. Pamiętaj, że Mozilla jest jedną z pierwszych przeglądarek, które można utworzyć, a wszystkie inne zawierają, w różnym stopniu, części jej fundamentów. –

+0

@Paulo Santos Myślę, że nie patrzyłem na wystarczającą liczbę ciągów agenta użytkownika. – Tarka

Odpowiedz

60

Nagłówek User-Agent jest częścią RFC2616, która jest ulepszoną wersję RFC1945, gdzie stwierdza się:

Pole nagłówka żądania User-Agent zawiera informacje na temat agenta użytkownika, który wysłał żądanie . Jest to do celów statystycznych, śledzenie naruszeń protokołu i automatyczne rozpoznawanie użytkowników w celu dostosowania odpowiedzi w celu uniknięcia szczególnych ograniczeń użytkownika. Aplikacje użytkownika POWINIEN uwzględnić to pole w żądaniach . Pole może zawierać wiele tokenów produktu (sekcja 3.8) oraz komentarze identyfikujące agenta i wszelkie produkty uboczne, które stanowią znaczącą część klienta użytkownika. Zgodnie z konwencją tokeny produktu są wymienione w kolejności ich znaczenia dla identyfikacji aplikacji .

User-Agent  = "User-Agent" ":" 1*(product | comment) 

Gdzie product jest zdefiniowany jako:

product   = token ["/" product-version] 
    product-version = token 
    token   = 1*<any CHAR except CTLs or separators> 

I comment jak:

comment  = "(" *(ctext | quoted-pair | comment) ")" 
    ctext   = <any TEXT excluding "(" and ")"> 
+0

Dzięki, właśnie tego szukałem. Wygląda na to, że w polu komentarza nie ma standardowego formatu. –

+0

Co to jest "notowana para"? – QED

+0

quoted-pair = "\" CHAR –

9

ta jest określona w RFC 1945 w części na zamówienie nagłówków. Nie jest to jednak bardzo znormalizowany format, a agenci użytkownika mają tendencję do umieszczania tam, gdzie chcą.

+0

Thx! Twoja odpowiedź w połączeniu z Paulem stanowią kompletną odpowiedź. –

+0

Nie ma za co! Wygląda na to, że Paulo jest bardziej kompletny i aktualny, więc możesz go oznaczyć jako zaakceptowany. – tloflin

1

Tak, patrz: mozilla website, ale jak wspomniano wcześniej. Zasadniczo możesz umieścić tam, co chcesz. Dla celów statystycznych/analitycznych najważniejszą rzeczą jest to, że każda przeglądarka/os powinna mieć taką standaryzację dla siebie.