1
resposta

desafio 3- GitHub

Tive bastante dificuldade nesse exercício , acho q pensei coisas mais complexas do que o exigido pelo exercicio, dai me perdia, ainda to me adaptando a isso.

package GitHub;

public class ErroConsultaGitException extends RuntimeException {
    public ErroConsultaGitException(String mensagem) {
       super(mensagem);
    }
}
package GitHub;

import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.Scanner;

public class GitHub {
    public static void main(String[] args) {
        Scanner leitura = new Scanner(System.in);
        System.out.println("\n-------------Consulta GitHub-----------");
        System.out.println("\nDigite o nome de usuário do GitHub: ");
        String usuario = leitura.nextLine();

        String endereco = "https://api.github.com/users/" +usuario;

        try {
            HttpClient client = HttpClient.newHttpClient();
            HttpRequest request = HttpRequest.newBuilder()
                    .uri(URI.create(endereco))
                    .header("Accept", "application/vnd.github.v3+json")
                    .build();

            HttpResponse<String> response = client
                    .send(request, HttpResponse.BodyHandlers.ofString());

            if(response.statusCode()==404) {
                throw new ErroConsultaGitException("Usuário não encontrado no GitHub");
            }

            String json = response.body();
            System.out.println(json);
        }catch (IOException | InterruptedException e) {
            System.out.println("Ocorreu um erro durante a consulta a API do GitHub.");
            e.printStackTrace();
        }catch (ErroConsultaGitException e) {
            System.out.println(e.getMessage());
        }

    }
}
1 resposta

Isso ai, continue assim!