Yanıtlar:
Sunucu, bir çerez alanı ayarlamak için yanıt başlığında aşağıdakileri gönderir.
Set-Cookie:isim =değeri
Bir çerez seti varsa, tarayıcı istek başlığında aşağıdakileri gönderir.
Cookie:isim =değeri
Daha fazla bilgi için Wikipedia'daki HTTP Çerezi makalesine bakın .
Cookie: name1=value1; name2=value2; ...
Çerezler, hem istekte (istemci -> sunucu) hem de yanıtta (sunucu -> istemci) HTTP üstbilgileri olarak iletilir.
Diğer yanıtlarda yazılanların yanı sıra, çerez yolu, maksimum çerez yaşı, güvenli olup olmadığı, Set-Cookie yanıt başlığında da geçilmiş olsun. Örneğin:
Set-Cookie:ad =değeri [ ; expires=tarih ] [ ; domain=etki alanı ] [ ; path=yol ] [ ; secure]
Ancak, bu ayrıntıların tümü bir sonraki HTTP isteği yapılırken istemci tarafından sunucuya geri gönderilmez.
Ayrıca HttpOnly, javascript koduyla komut dosyalarında, çerezinizin httponly olduğunu ve erişilmesine izin verilmemesi gerektiğini belirtmek için çerezinizin sonundaki bayrağı da ayarlayabilirsiniz . Bu, oturum ele geçirme gibi saldırıları önlemeye yardımcı olur.
Daha fazla bilgi için, bkz. RFC 2109 . HTTP çerezleri , Nicholas C. Zakas'ın makalesine de bir göz atın .
resp olarak örnek komut dosyası oluşturun:
#!/bin/bash
http_code=200
mime=text/html
echo -e "HTTP/1.1 $http_code OK\r"
echo "Content-type: $mime"
echo
echo "Set-Cookie: name=F"
sonra çalıştırılabilir hale getirin ve böyle çalıştırın.
./resp | nc -l -p 12346
tarayıcıyı aç ve URL'ye göz at: http: // localhost: 1236 Tarayıcı tarafından gönderilen Çerez değerini göreceksin
[aaa @ bbbbbbbb] $ ./resp | nc -l -p 12346
GET / HTTP / 1.1
Ana bilgisayar: xxx.xxx.xxx.xxx:12346
Bağlantı: canlı kal
Önbellek Kontrolü: maks. Yaş = 0
Kabul et: metin / html, uygulama / xhtml + xml, uygulama / xml; q = 0,9, resim / webp, * / *; q = 0,8
Yükseltme-Güvensiz İstekler: 1
Kullanıcı-Aracı: Mozilla / 5.0 (Windows NT 6.1) AppleWebKit / 537.36 (GHTo gibi KHTML) Chrome / 49.0.2623.112 Safari / 537.36
Kabul Et-Kodlama: gzip, deflate, sdch
Kabul Dili: en-US, en; q = 0,8, ru; q = 0,6
Çerez: isim = F