2016-10-11 3 views
0

Ich habe eine Klasse, die java.net.HttpURLConnection erweitert. Ich entwickle für Android und beschäftige mich mit digest auth (was nicht nativ von URLConnection unterstützt wird).Wie überschreibt man HttpURLConnection connect() - Methode in Java

Ursprünglich wollte ich die connect() Methode überschreiben, so dass ich super.connect() Blick auf den Antwortcode und dann führen Sie die Digest-Auth "unter der Haube", wenn wir eine 401 erhalten. Die connect-Methode wird als abstrakt im Original deklariert java.net Klasse, so muss es implementiert werden. Ich wollte die Quelle für diese Methode finden (da sie bei einer Standardinstanz aufgerufen werden kann), konnte aber nichts finden, um mir zu zeigen, was darunter vorgeht.

Meine nächste Wahl war, getResponseCode außer Kraft zu setzen, aber wieder muss ich einen Körper für connect() bereitstellen.

Also weiß jemand, was HttpURLConnection.connect() tatsächlich tut? und gehe ich das richtig an?

Antwort

0

Also nach meiner Forschung ist es tatsächlich sun.net.www.protocol.http.HttpURLConnection, die als konkretes Objekt/Typ beim Aufruf URL.openConnection() mit HTTP-Protokoll zurückgegeben wird. Dies ist die konkrete Klasse, von der ich ableiten sollte, um das Leben leichter zu machen, als die abstrakte Klasse java.net.HttpURLConnection implementieren zu müssen.

Auf diese Weise kann ich die connect() Methode überschreiben, um Digest Auth usw. zu unterstützen.

Verwandte Themen