Come ottenere una password URL protetto con Java

November 17

Come ottenere una password URL protetto con Java


Una volta che un utente Web ha un nome utente e una password autorizzati, può accedere a contenuto protetto da un server. Egli può inserire le informazioni di login attraverso un browser, un'applicazione FTP o attraverso un programma che ha scritto, come ad esempio uno nel linguaggio di programmazione Java. Gli sviluppatori di Java fatto una classe appositamente per la gestione di contenuti protetti da password, la classe Authenticator. Questa classe funziona il programma chiamando con un riferimento ad una classe di autenticazione personalizzata che si scrive. Un vantaggio di utilizzare la classe Authenticator è la libertà dalla gestione i dettagli della transazione con il server che richiede le informazioni di login. La classe Authenticator gestisce questi dettagli.

istruzione

1 Incollare il codice seguente programma Java in qualsiasi word processor o un editor di testo. Il programma visualizza una finestra di browser-like, che è possibile inserire un URL in.

import java.io. *;

import java.net. *;

import java.awt. *;

importare java.awt.event. *;

public class GetProtectedURL estende Telaio {

private TextField field1 = new TextField();

TextArea Area1 privato = new TextArea ();

GetProtectedURL pubblico () {

super ( "Get URL protetta");

// Fare Authenticator

// Chiamata Authenticator andrà qui

// Su Layout dello schermo

aggiungere (field1, BorderLayout.NORTH);

area1.setEditable (false);

aggiungere (Area1, BorderLayout.CENTER);

field1.addActionListener (new ActionListener () {

public void actionPerformed (ActionEvent e) {

String s = field1.getText ();

if (s.length ()! = 0)

area1.setText (getURLContent (s));

}

});

addWindowListener (nuova WindowAdapter () {

windowClosing public void (WindowEvent e) {

dispose ();

System.exit (0);

}

});

}

private String getURLContent (String urlString) {

StringWriter stringWriter1 = new StringWriter ();

PrintWriter printWriter1 = new PrintWriter (stringWriter1);

provare {

URL url1 = new URL (urlString);

contenuti InputStream = (InputStream) url1.getContent ();

BufferedReader Reader1 =

new BufferedReader (nuovo InputStreamReader (tenore));

String contentline;

while ((contentline = reader1.readLine ())! = null) {

printWriter1.println (contentline);

}

} Catch (MalformedURLException e) {

printWriter1.println ( "URL non valido");

} Catch (IOException e) {

printWriter1.println ( "Errore lettura URL");

}

tornare stringWriter1.toString ();

}

void main (String args []) {pubblici statici

frame1 frame = new GetProtectedURL ();

frame1.setSize (300, 300);

frame1.setVisible (true);

}

}

2 Salvare il programma come "GetProtectedURL.java", con il tipo di file impostato su "Testo normale".

3 Aprire un prompt dei comandi DOS, quindi passare alla cartella contenente il file salvato Java nell'ultimo passaggio.

4 Compilare il programma digitando "javac GetProtectedURL.java", quindi eseguirlo digitando "java GetProtectedURL."

5 Inserire il nome di un URL non protetto da password nella casella di testo indirizzo. Il browser Java verrà visualizzato il contenuto. Inserisci un URL protetto. Il browser visualizzerà un messaggio di errore. Potrai risolvere l'errore con la creazione di una classe autenticatore nei prossimi passi.

6 Tipo, appena prima che la parentesi dell'ultima chiusura (vale a dire "}") del listato del programma, il codice seguente, che crea l'autenticazione della password.

Classe MyAuthenticator estende Authenticator {

protected PasswordAuthentication getPasswordAuthentication() {

String txtUsername = "TYPE_YOUR_USERNAME_HERE";

String txtPassword = "TYPE_YOUR_PASSWORD_HERE";

restituire nuova PasswordAuthentication (txtUsername, txtPassword.toCharArray ());

} // Metodo getPasswordAuthentication

}

7 Digitare il testo "TYPE_YOUR_USERNAME_HERE" il nome utente il server richiede di accedere al contenuto protetto. Digitare il testo "TYPE_YOUR_PASSWORD_HERE" la password vostre esigenze del server.

8 Tipo, al posto della linea "// chiamata Authenticator andrà qui," questo codice, che racconta la JRE per chiamare il codice elencato nel passaggio precedente, se il server si sta richiedendo il contenuto da richiede l'autenticazione:

Authenticator.setDefault (nuova customAuthenticator ());

9 Ricompilare ed eseguire il programma, con l'URL protetto da password si è tentato di entrare nel passaggio 5. Questa volta il browser visualizzerà il contenuto protetto.