Maison > Java > javaDidacticiel > Comment puis-je définir un agent utilisateur personnalisé pour les connexions URL Java ?

Comment puis-je définir un agent utilisateur personnalisé pour les connexions URL Java ?

Susan Sarandon
Libérer: 2024-11-29 15:07:14
original
770 Les gens l'ont consulté

How Can I Set a Custom User Agent for Java URLConnections?

Personnalisation de l'agent utilisateur pour les connexions URL Java

Lors de l'établissement d'une connexion à une page Web à l'aide de l'URLConnection de Java, vous souhaiterez peut-être définir un utilisateur personnalisé agent. Ceci est couramment utilisé pour imiter le comportement d'un navigateur Web particulier ou pour identifier votre application. Cependant, les tentatives de définition d'un agent utilisateur autre que celui par défaut entraînent souvent l'ajout de la valeur par défaut.

Solution :

Dans les versions antérieures de Java, définir un utilisateur personnalisé agent via setRequestProperty("User-Agent", "custom_agent") ajouté "Java/xx" à la fin. Ce problème a été résolu dans Java 1.6.30 et versions ultérieures.

Exemple :

import java.net.URL;
import java.net.URLConnection;

public class CustomUserAgent {

    public static void main(String[] args) throws Exception {
        URL url = new URL("http://example.com");
        URLConnection connection = url.openConnection();
        connection.setRequestProperty("User-Agent", "Mozilla/5.0");
        System.out.println(connection.getRequestProperty("User-Agent"));
    }
}
Copier après la connexion

Dans Java 1.6.30 ou version ultérieure, ce code affichera "Mozilla /5.0" sans le "Java/xx" ajouté.

Netcat Vérification :

Pour vérifier que l'agent utilisateur personnalisé est utilisé, vous pouvez écouter sur un port en utilisant netcat :

$ nc -l -p 8080
Copier après la connexion

Lorsque le code ci-dessus est exécuté, vous devriez voir l'agent utilisateur personnalisé dans les en-têtes HTTP reçus par netcat.

Solutions alternatives :

Si Si vous rencontrez toujours des problèmes lors de l'ajout de "Java/xx" dans les anciennes versions de Java, vous pouvez essayer d'utiliser une bibliothèque HTTP tierce qui vous permet de contrôler entièrement l'en-tête User-Agent.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal