Heim > Java > javaLernprogramm > Wie stelle ich den Benutzeragenten einer Java-URL-Verbindung ohne Java-Ergänzungen ein?

Wie stelle ich den Benutzeragenten einer Java-URL-Verbindung ohne Java-Ergänzungen ein?

Mary-Kate Olsen
Freigeben: 2024-11-30 20:59:12
Original
543 Leute haben es durchsucht

How to Set the User Agent of a Java URLConnection Without Java Additions?

Festlegen des Benutzeragenten einer Java-URL-Verbindung ohne Java-Zusatz

In Java fügt das Festlegen der User-Agent-Eigenschaft einer URL-Verbindung normalerweise hinzu: Java/version“ an das Ende der angegebenen Agentenzeichenfolge anhängen. Um einen rein benutzerspezifizierten Benutzeragenten zu erreichen, sind die folgenden Schritte erforderlich:

Java 1.6.30 und höher

In Java-Versionen 1.6.30 und höher: setRequestProperty("User-Agent", "user-agent-string") setzt den Agenten ohne Java-Zusatz. Dies kann bestätigt werden, indem man mit einem Port-Listener wie Netcat auf eingehende Anfragen lauscht:

$ nc -l -p 8080
Nach dem Login kopieren

Ohne setRequestProperty sehen die Header so aus:

GET /foobar HTTP/1.1
User-Agent: Java/1.6.0_30
Host: localhost:8080
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive
Nach dem Login kopieren

Mit setRequestProperty wird der User- Der Agent wird korrekt eingestellt:

GET /foobar HTTP/1.1
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2
Host: localhost:8080
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive
Nach dem Login kopieren

Voll Beispiel:

import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;

public class TestUrlOpener {

    public static void main(String[] args) throws IOException {
        URL url = new URL("http://localhost:8080/foobar");
        URLConnection hc = url.openConnection();
        hc.setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2");

        System.out.println(hc.getContentType());
    }

}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie stelle ich den Benutzeragenten einer Java-URL-Verbindung ohne Java-Ergänzungen ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage