Rumah> Java> javaTutorial> teks badan

Pengesah Java

PHPz
Lepaskan: 2024-08-30 15:45:08
asal
628 orang telah melayarinya

Kelas pengesah Java digunakan untuk mengesahkan sambungan rangkaian. Kelas ini ialah kelas Java standard. Kelas pengesah digunakan dalam aplikasi yang memerlukan pengesahan pengguna untuk mengakses URL tertentu. Kelas pengesah melakukan pengesahan dengan menggesa pengguna untuk maklumat kelayakan seperti nama pengguna dan kata laluan.

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Untuk melaksanakan pengesahan dalam aplikasi, aplikasi perlu melakukan beberapa langkah; pertama, kelas aplikasi memanjangkan kelas java.net.Authenticator dan mengatasi fungsi getPasswordAuthentication() kelas java.net.Authenticator dalam subkelas. Biasanya, fungsi ini mengandungi fungsi getXXX() untuk mendapatkan maklumat pengguna untuk pengesahan, seperti nama pengguna dan kata laluan. Fungsi getPasswordAuthentication() mengembalikan nilai PasswordAuthentication yang mengandungi maklumat kelayakan.

Sintaks kelas Authenticator dalam Java ialah –

public abstract class Authenticator extends Object { // code of the authenticator class }
Salin selepas log masuk

Fungsi Ahli Kelas Pengesah

Mari kita lihat keseluruhan senarai fungsi ahli kelas Pengesah yang boleh digunakan untuk pengesahan.

1. getPasswordAuthentication() –Apabila kata laluan diperlukan, fungsi ini digunakan. Semua subkelas harus mengatasi getPasswordAuthentication (), yang mengembalikan null secara lalai.

Sintaks –

protected PasswordAuthentication getPasswordAuthentication();
Salin selepas log masuk

2. getRequestingHost() –Fungsi ini mendapatkan semula nama hos tapak yang meminta pengesahan dan mengembalikan null jika tiada nama hos ditemui.

Sintaks –

protected final String getRequestingHost();
Salin selepas log masuk

3. getRequestingPort() –Fungsi ini digunakan untuk mendapatkan nombor port untuk meminta sambungan.

Sintaks –

protected final int getRequestingPort();
Salin selepas log masuk

4. getRequestingPrompt() –Fungsi ini digunakan untuk menggesa mesej rentetan peminta.

Sintaks –

protected final String getRequestingPrompt();
Salin selepas log masuk

5. getRequestingProtocol() –Fungsi ini digunakan untuk mendapatkan protokol yang meminta sambungan.

Sintaks –

protected final int getRequestingProtocol();
Salin selepas log masuk

6. getRequestingScheme() –Fungsi ini digunakan untuk mengalih keluar skema tapak peminta.

Sintaks –

protected final String getRequestingScheme();
Salin selepas log masuk

7. getRequestingSite() –Fungsi ini digunakan untuk mendapatkan InetAddress tapak yang meminta, dan mengembalikan null jika tiada InetAddress hadir.

Sintaks –

protected final InetAddress getRequestingSite();
Salin selepas log masuk

8. getRequestingURL() –Fungsi ini digunakan untuk mendapatkan URL peminta.

Sintaks –

protected URL getRequestingURL();
Salin selepas log masuk

9. setDefault(Authenticator a) –Ia digunakan untuk menetapkan authenticator untuk digunakan oleh rangkaian apabila pelayan HTTP memerlukan pengesahan.

Sintaks –

public static void setDefault(Authenticator a);
Salin selepas log masuk

10. getRequestorType()– Fungsi ini digunakan untuk mendapatkan sama ada peminta ialah pelayan atau Proksi.

Sintaks –

protected Authenticator.RequestorType getRequestorType();
Salin selepas log masuk

Contoh Kelas Pengesah dalam Java

Seterusnya, kami menulis kod Java untuk memahami kelas Authenticator dengan lebih jelas dengan contoh berikut di mana kami mencipta subkelas kelas Authenticator dan mengatasi fungsi getPasswordAuthentication() untuk melaksanakan pengesahan bagi sesetengah URL, seperti di bawah –

Contoh #1

Kod:

package p1; import java.io.BufferedReader; import java.io.IOException; import java.net.URL; import java.io.InputStreamReader; import java.net.Authenticator; import java.net.PasswordAuthentication; import java.net.MalformedURLException; class MyAuthenticatorclass extends Authenticator { protected PasswordAuthentication getPasswordAuthentication() { String username = "John", password = "pass123"; this.print(); return new PasswordAuthentication(username, password.toCharArray()); } void print() { int hostname = getRequestingPort(); System.out.println("The request Port number :" + hostname); } } public class Demo { public static void main(String[] arg) { String data; try { //create object of authenticator class MyAuthenticatorclass obj =new MyAuthenticatorclass(); Authenticator.setDefault(new MyAuthenticatorclass()); URL url = new URL("https://www.educba.com/"); // reads data from the url in html form BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream())); System.out.println("The requesting URL is : "+url.getHost()); obj.getPasswordAuthentication() ; while ((data = br.readLine()) != null) { System.out.println(data); } br.close(); } catch (MalformedURLException e) { System.out.println("Malformed URL Exception : " + e); } catch (IOException e) { System.out.println("IO Exception: " + e); } } }
Salin selepas log masuk

Output:

Pengesah Java

Seterusnya, kami menulis kod java untuk memahami kelas Authenticator di mana kami cuba mendapatkan semua maklumat dalam fungsi getPasswordAuthentication() yang diganti, seperti di bawah –

Contoh #2

Kod:

package p1; import java.io.BufferedReader; import java.io.IOException; import java.net.URL; import java.io.InputStreamReader; import java.net.Authenticator; import java.net.InetAddress; import java.net.PasswordAuthentication; import java.net.MalformedURLException; class MyAuthenticatorclass extends Authenticator { protected PasswordAuthentication getPasswordAuthentication() { String username = "John", password = "pass123"; this.print(); return new PasswordAuthentication(username, password.toCharArray()); } void print() { // get all information String prom = getRequestingPrompt(); URL url = getRequestingURL(); int prt = getRequestingPort(); String hostname = getRequestingHost(); InetAddress ipaddress = getRequestingSite(); String sh = getRequestingScheme(); RequestorType rt = getRequestorType(); String protocol = getRequestingProtocol(); System.out.println("The prompt is :" + prom+"\nThe hostname is :" + hostname+"\nThe ipaddress is :" + ipaddress+"\nThe port no is :" + prt); System.out.println("The protocol is :" + protocol+"\nThe scheme is :" + sh+"\nThe URL is :" + url+"\nThe Requester Type is :" + rt); } } public class Demo { public static void main(String[] arg) { String data; try { //create object of authenticator class MyAuthenticatorclass obj =new MyAuthenticatorclass(); Authenticator.setDefault(new MyAuthenticatorclass()); URL url = new URL("https://www.educba.com/"); // reads data from the url in html form BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream())); System.out.println("The requesting URL is : "+url.getHost()); obj.getPasswordAuthentication() ; while ((data = br.readLine()) != null) { System.out.println(data); } br.close(); } catch (MalformedURLException e) { System.out.println("Malformed URL Exception : " + e); } catch (IOException e) { System.out.println("IO Exception: " + e); } } }
Salin selepas log masuk

Output:

Pengesah Java

Kod di atas cuba mendapatkan semua maklumat yang berkaitan dengan pengesahan.

Kesimpulan

Kelas java authenticator ialah kelas java terbina dalam yang digunakan untuk mengendalikan URL atau pengesahan sambungan rangkaian. Seperti yang telah kita lihat, kelas terbina dalam ini mempunyai sepuluh fungsi yang setiap satunya boleh digunakan untuk tujuan tertentu.

Atas ialah kandungan terperinci Pengesah Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!