Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Datei Download mit Java von HTTPS

Empfohlene Antworten

Veröffentlicht

Hallo,

ich bin neu hier und hoffe, ich hab mein Thema im richtigen Bereich angelegt.

Also ich versuche ein Java Programm zu schreiben, was einen Datei Download von einer HTTPS Seite automatisieren soll. Diese Seite benötigt ein Zertifikat (ein eigenes) und einen Benutzernamen sowie ein Passwort.

Habt jemand eine Idee wie ich das realisieren könnte bzw nützliche Links mit einem Tutorial? Nach stundenlanger Suche mit google musste ich feststellen, dass ich das ganze nicht so ganz verstehe :( Ich bin soweit, dass ich weiß, dass die URL Klasse mich nicht dahin bringt... aber den richtigen Umgang mit javax.net.ssl.HttpsURLConnection und dem damit zusammenhängenden Bereich des TrustManagers etc will mir einfach nicht so wirklich in den Kopf hinein.:confused:

Über Hilfe wäre ich sehr dankbar!

Liebe Grüße

Trinity

Musst du den Zugriff auf die Seite zu Fuß selbst Programmieren oder kannst du bereits fertige Bibliotheken nutzen? Dann schau dir mal denn HttpClient von Apache an. HttpClient - HttpClient Home

Zum Thema Zertifikate und wie du sie in Java nutzen kannst bzw. in deinen KeyStore bekommst kann ich dir folgenden Link empfehlen. How to import a certificate from file in Java using keytool [spikesource hints'n'tips]

Hallo,

für den Namen und das Passwort brauchst du meines Wissens

den sun.misc.BASE64Encoder, damit musst du den String benutzernamen +":"+passwort encoden und davor dann ein "Basic: " puzzeln

dann in der URLConnection noch vor dem .connect(), .setDoInput auf true setzten und .setRequestProperty("Authorization", obenRausgekommenesPW); angeben.

Hab das glaub ich von der JavaInsel.

Grüße,

madbat

Edit: hab das ganze aber noch nicht mit Seiten versucht die Zertifikate brauchen, sondern immer nur einen Namen und ein Passwort haben wollten...

Bearbeitet von madbat

Super, vielen lieben Dank für die schnellen Antworten.

Werd mich da in den nächten Tagen mal durchwühlen und falls ich dann noch ne Frage hab bzw wenn ich es hinbekommen habe, hört ihr nochmal von mir ;)

Ach ja: ich muss das nicht alles händisch machen, ich kann auch fertige Bibliotheken nutzen. Danach hatte ich auch schon gesucht gehabt - aber wie gesagt, da fehlte dann einfach das Verständnis :(

Mmh, hab mich da nu tagelang mit beschäftigt und mir die Finger wund gegoogelt- ich verstehs einfach nicht :(

Also zum einen: diese Apache Seite- soll man da n Tool runterladen können, dass für mich die Arbeit macht oder wie soll ich das verstehen?

Zum anderen: ich bin mittlerweile soweit, dass ich mein .p12 Zertifikat mittels keytool umgewandelt bekommen habe. Aber ich bin immer noch unschlüssig, welche Klassen ich nun alle benötige und ansprechen muss.

Vom Prinzip würde ich das so verstehen (reine Logik jetzt von mir):

1. Zertifikat bereitstellen

2. Verbindung aufbauen und dieser das Zertifikat sowie Nutzername und Passwort mitgeben

3. Antwort empfangen und auslesen.

Aber wie ich das programmiertechnisch umsetzen soll ist mir noch immer ein Rätsel. :confused::confused:

Vielleicht hat hier ja noch jemand den zündenden Vorschlag, damit das auch endlich mal in meinem Hirn ankommt wie es umsetzbar ist ;)

Keiner der mir helfen kann oder will?

Hast du dir auf den Seiten des HttpClients auch mal das Beispiel für eine SSL Verbindung angeschaut und verstanden?

Was hast du bis jetzt an Code erzeugt und wo liegen die genauen Probleme. Wenn dir SSL zu schaffen macht versuche es erst mal ohne SLL und ohne User und Passwort. Wenn du die Grundsätze verstanden hast wie du eine Datei von einem entfernten Rechner herunter laden kannst. Dann kannst du dich um die Themen User/Password und SSL kümmern.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.