HTTP-pyynnön lähettäminen perusautentikoinnilla

Java:
HTTP-pyynnön lähettäminen perusautentikoinnilla

How to: (Kuinka tehdä:)

import java.io.IOException;
import java.net.Authenticator;
import java.net.PasswordAuthentication;
import java.net.URL;
import javax.net.ssl.HttpsURLConnection;
import java.util.Base64;

public class BasicAuthRequest {
    public static void main(String[] args) {
        try {
            URL url = new URL("https://example.com/api/data");
            String encoding = Base64.getEncoder().encodeToString(("user:password").getBytes());

            HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
            connection.setRequestMethod("GET");
            connection.setDoOutput(true);
            connection.setRequestProperty("Authorization", "Basic " + encoding);

            int responseCode = connection.getResponseCode();
            System.out.println("Response Code: " + responseCode);

            // Handle input stream (response) as necessary...

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Sample output:

Response Code: 200

Deep Dive (Syväsukellus):

Perusautentikaatio on internetin varhainen turvallisuusmekanismi, joka edelleen suojelee resursseja. Muita menetelmiä ovat OAuth ja JWT (JSON Web Tokens). Tämä koodi luo Authorization otsikon Base64-koodatusta merkkijonosta, joka on muotoiltu “käyttäjätunnus:salasana”. Ohjelma avaa yhteyden resurssiin ja välittää koodatun tunnistetiedon palvelimelle.

See Also (Katso Myös):