HTTP - Parametreler
Bu bölüm, önemli HTTP Protokol Parametrelerinden birkaçını ve bunların iletişimde kullanılma biçimlerini listeleyecektir. Örneğin, tarih biçimi, URL biçimi, vb. Bu, HTTP istemcisi veya sunucu programları yazarken istek ve yanıt mesajlarınızı oluşturmanıza yardımcı olacaktır. HTTP istekleri ve yanıtları için mesaj yapısını öğrenirken sonraki bölümlerde bu parametrelerin tam olarak kullanıldığını göreceksiniz.
HTTP Sürümü
HTTP bir <major>.<minor>protokol sürümlerini belirtmek için numaralandırma şeması. Bir HTTP mesajının sürümü, ilk satırda bir HTTP Sürümü alanı ile belirtilir. HTTP sürüm numarasını belirtmenin genel sözdizimi şöyledir:
HTTP-Version = "HTTP" "/" 1*DIGIT "." 1*DIGIT
Misal
HTTP/1.0
or
HTTP/1.1
Tekdüzen Kaynak Tanımlayıcıları
Tekdüzen Kaynak Tanımlayıcıları (URI), bir kaynağı, örneğin bir web sitesini, bir web hizmetini, vb. Tanımlamak için basitçe biçimlendirilmiş, büyük / küçük harfe duyarlı olmayan dizedir. HTTP için kullanılan genel bir URI sözdizimi aşağıdaki gibidir:
URI = "http:" "//" host [ ":" port ] [ abs_path [ "?" query ]]
Burada eğer port boş veya belirtilmemişse, 80 numaralı bağlantı noktası HTTP için varsayılır ve abs_path eşdeğerdir abs_pathnın-nin "/". İçindekiler dışındaki karakterlerreserved ve unsafe kümeler ""% "HEX HEX" kodlamasına eşdeğerdir.
Misal
Aşağıdaki üç URI eşdeğerdir:
http://abc.com:80/~smith/home.html
http://ABC.com/%7Esmith/home.html
http://ABC.com:/%7esmith/home.html
Tarih / Saat Biçimleri
Tüm HTTP tarih / saat damgaları, istisnasız Greenwich Ortalama Zamanında (GMT) gösterilmelidir ZORUNLU. HTTP uygulamalarının, tarih / saat damgalarının aşağıdaki üç temsilinden herhangi birini kullanmasına izin verilir:
Sun, 06 Nov 1994 08:49:37 GMT ; RFC 822, updated by RFC 1123
Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036
Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format
Karakter Setleri
Müşterinin tercih ettiği karakter kümelerini belirtmek için karakter kümeleri kullanıyoruz. Birden çok karakter kümesi virgülle ayrılmış olarak listelenebilir. Bir değer belirtilmezse, varsayılan US-ASCII'dir.
Misal
Geçerli karakter kümeleri şunlardır:
US-ASCII
or
ISO-8859-1
or
ISO-8859-7
İçerik Kodlamaları
Bir içerik kodlama değeri, içeriği ağ üzerinden geçirmeden önce kodlamak için bir kodlama algoritmasının kullanıldığını belirtir. İçerik kodlaması, öncelikle bir belgenin kimliğini kaybetmeden sıkıştırılmasına veya başka şekilde yararlı bir şekilde dönüştürülmesine izin vermek için kullanılır.
Tüm içerik kodlama değerleri büyük / küçük harfe duyarlıdır. HTTP / 1.1, sonraki bölümlerde göreceğimiz Accept-Encoding ve Content-Encoding başlık alanlarında içerik kodlama değerlerini kullanır.
Misal
Geçerli kodlama şemaları aşağıdadır:
Accept-encoding: gzip
or
Accept-encoding: compress
or
Accept-encoding: deflate
Medya Türleri
HTTP, İnternet Medya Türlerini kullanır. Content-Type ve Acceptaçık ve genişletilebilir veri tipleme ve tip anlaşması sağlamak için başlık alanları. Tüm Medya türü değerleri İnternet Tahsisli Sayı Yetkilisine (IANA) kaydedilir. Ortam türünü belirtmek için genel sözdizimi aşağıdaki gibidir:
media-type = type "/" subtype *( ";" parameter )
Tür, alt tür ve parametre öznitelik adları büyük / küçük harfe duyarlı değildir.
Misal
Accept: image/gif
Dil Etiketleri
HTTP, içindeki dil etiketlerini kullanır. Accept-Language ve Content-Languagealanlar. Bir dil etiketi, bir veya daha fazla bölümden oluşur: bir birincil dil etiketi ve muhtemelen boş bir alt etiket dizisi:
language-tag = primary-tag *( "-" subtag )
Etiket içinde beyaz boşluklara izin verilmez ve tüm etiketler büyük / küçük harfe duyarlı değildir.
Misal
Örnek etiketler şunları içerir:
en, en-US, en-cockney, i-cherokee, x-pig-latin
burada herhangi iki harfli birincil etiket bir ISO-639 dil kısaltmasıdır ve herhangi iki harfli ilk alt etiket bir ISO-3166 ülke kodudur.