Restful Web Services – JAX-RS HTTP Başlıkları (HTTP Headers)

Restful Web Services (JAX-RS) @HeaderParam ve @Context notasyonları (annotations) ile HTTP başlık isteklerini alabiliriz.

HTTP Başlıkları (Headers) Nedir?

Bir web sayfasına giriş yapıldığında istekde (request) bulunur ve yanıt (response) alırız. HTTP başlıkları (headers) bu isteklerin ve yanıtların temel parçasıdır; istemci web tarayıcısı, istenen sayfa ve sunucu bilgileri gibi birçok konu hakkında bize bilgi verir.

Aşağıda en sık karşıma çıkan HTTP başlıklarını açıklamları ve örnekleriyle paylaştım.

Başlık Adı Açıklama Örnek
Accept Yanıt için kabul edilebilir içerik türleri Accept: text/plain
Accept-Charset Kabul edilebilir karakter setleri. Accept-Charset: utf-8
Accept-Encoding Kabul edilebilir kodlamaların listesi. Accept-Encoding: gzip, deflate
Accept-Language Yanıt için kabul edilebilir insan dillerinin listesi. Accept-Language: en-US
Authorization HTTP kimlik doğrulaması için kimlik doğrulama kimlik bilgileri. Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Cache-Control İstek-yanıt zinciri boyunca tüm önbellekleme mekanizmalarının uyması gereken yönergeleri belirtmek için kullanılır. Cache-Control: no-cache
Cookie Daha önce Set-Cookie ile sunucu tarafından gönderilen bir HTTP tanımlama bilgisi. Cookie: $Version=1; Skin=new;
Content-Length İstek gövdesinin sekizli uzunluğu (8-bit bayt).  Content-Length: 348
Content-Type İsteğin gövdesinin MIME türü (POST ve PUT istekleriyle kullanılır). Content-Type: application/x-www-form-urlencoded
User-Agent Kullanıcı aracısının kullanıcı aracısı dizesi.  User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/21.0

 

Diğer örnekleirmizde olduğu gibi hemen Maven’da oluşturduğumuz projenin web.xml ve pom.xml ayarlarını yapalım.

pom.xml

web.xml

HttpHeader_UserRestService.java

Yukarıda ki örnekte /user/getUserAgent dizinine istekde bulunulduğunda @HeaderParam notasyonu ile  user-agent bilgisini istiyoruz ve ekrana aşağıda ki çıktıyı veriyoruz.

URI: /rest/user/getUserAgent

 

HttpHeader_UserRestService.java

Yukarıda ki örnekte /user/getUserAgent dizinine istekte bulunulduğunda @Context notasyonu HttpHeaders tipinde HTTP başlıklarını saklar. getRequestHeader ile istenilen HTTP başlığı (user-agent istenildi), userAgent değişkenine atanıyor ve ekrana aşağıda ki sonuç döndürülüyor.

URI: /rest/user/getUserAgent


Yazılıma olan tutkusu için Trakya Üniversitesi - Bilgisayar Teknolojisi ve Bilişim Sistemleri öğrencisi, bölüm temsilcisi ve Keşan Yusuf Çapraz Uygulamalı Bilimler Yüksekokulu okul temsilcisi olarak öğrenimini 2016'da tamamladı. Junior Java Developer olarak aktif iş hayatına devam etmektedir.

Yazıyı Paylaş

Recent Articles

Yorum Yaz

© 2018 Onur Arslan. Tüm Hakları Saklıdır. · RSS Yazıları · RSS Yorumları