Publié le 02/09/2010
Auteur axel
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Charger l'entete d'un fichier via le protocole HTTP

La communication avec un serveur via HTTP fonctionne sur principe du client qui envoie une demande au serveur puis du serveur qui répond à notre requete. La réponse du serveur contient toujours une entete pour en apprendre d'avantage sur le contenu à télécharger et de vérifier que tout s'est bien passé.

Lire le header d'un ficher via Http

Le header du contenu est la première réponse que le serveur envoie à une requete. L'entete contient un élement important à savoir le status du document: 200 le document est prêt à etre chargé, un autre code oups !
En JAVA, la commande getHeaderFields retourne les informations concernant le document à charger:
- 200 OK: status du document,
- Content-Type: type de fichier,
- Expires: date d'expiration,
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
 
/**
 * Charger l'entete d'un fichier HTML
 * http://www.fobec.com/java/988/charger-entete-fichier-via-protocole-http.html
 * @author Axel 2010
 */
public class HttpResponseHeader {
 
    public static void main(String[] args) {
        try {
            URL url = new URL("http://www.fobec.com");
            URLConnection connection = url.openConnection();
 
            Map map = connection.getHeaderFields();
            Set set = map.entrySet();
 
            Iterator iterator = set.iterator();
            while (iterator.hasNext()) {
                System.out.println(iterator.next());
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Pour la page d'index du suite Fobec.com, la class renvoie les données ci-dessous:
null=[HTTP/1.0 200 OK]
Content-Language=[fr]
Date=[Wed, 25 Feb 2010 16:08:25 GMT]
Content-Length=[21827]
Expires=[Thu, 26 Feb 2010 16:08:25 GMT]
Set-Cookie=[PHPSESSID=5939f4299b71b8a3a04a83d2c30a91f6; path=/]
Connection=[keep-alive]
Content-Type=[text/html; charset=utf-8]
X-Cache=[MISS from ipcop.localdomain]
X-Powered-By=[PHP/5.5.20]
Server=[Apache]

A y regarder de plus pret, on trouve :
Content-Length: taille du document à charger,
Date: date de création du fichier,
Expires: date d'expiration de la ressource,
...
Bref toutes les informations indispensables à une communication client/serveur se trouve dans l'entete que l'on peut charger directement avec getHeaderFields() en JAVA.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - sources
Mise a jour
02/09/2010
Visualisation
vu 2348 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Jacques dans CMS

Cette méthode produit une gamme de gris qui ne tient pas compte des caractéristiques de la vision humaine.
En vidéo on utilise la fonction luminance qui représente mieux les jaunes e...

Publié par taoufik dans CMS

merci cest un bon logiciel

Publié par pat59 dans CMS

j espere que le jeu vas fonctionner car vous le donnez mais il est bloqué snifff

Publié par Fobec dans logiciel

L'api ip to RIR est compatible avec les adresses IP au format ipV6

Publié par agence cms open source dans tuto

Vu la multitude des outils de gestion de contenu Open Source, sélectionner l'un d'entre eux exige de réaliser une comparaison fine. Les lecteurs défendent les raisons de leurs cho...