All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.dabogadog.sessionIds.ApiSessionIds Maven / Gradle / Ivy

package io.github.dabogadog.sessionIds;

import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import io.github.dabogadog.httpUtils.ApiConfig;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

public class ApiSessionIds {
    private static final Logger logger = Logger.getLogger(ApiSessionIds.class.getName());
    public static String getSessionIds(String idVariable, String autorizacion) {
        try {
            // URL de la API
            String url = ApiConfig.BASE_URL_SESSIONID + idVariable + ApiConfig.PARAMS_SESSIONID;

            // Crear la conexión HTTP
            URL obj = new URL(url);
            HttpURLConnection con = (HttpURLConnection) obj.openConnection();

            // Configurar la solicitud
            con.setRequestMethod("GET");
            con.setRequestProperty("Accept-Language", ApiConfig.ACCEPT_LANGUAGE );
            con.setRequestProperty("Authorization", autorizacion);

            // Obtener la respuesta
            int responseCode = con.getResponseCode();
            if (responseCode == HttpURLConnection.HTTP_OK) {
                BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream(), StandardCharsets.UTF_8));
                String inputLine;
                StringBuilder response = new StringBuilder();

                while ((inputLine = in.readLine()) != null) {
                    response.append(inputLine);
                }
                in.close();

                // Analizar la respuesta JSON
                JsonParser jsonParser = new JsonParser();
                JsonObject jsonResponse = jsonParser.parse(response.toString()).getAsJsonObject();
                JsonArray data = jsonResponse.getAsJsonObject("data").getAsJsonArray("data");


                // Crear una lista para almacenar los sessionIds
                List sessionIds = new ArrayList<>();

                // Iterar a través de los objetos y extraer los sessionIds
                for (int i = 0; i < data.size(); i++) {
                    JsonObject item = data.get(i).getAsJsonObject();
                    String sessionId = item.get("sessionId").getAsString();
                    sessionIds.add(sessionId);
                }

                // Convertir la lista en una cadena separada por comas
                return String.join(",", sessionIds);
            } else {
                logger.log(Level.SEVERE, "Error en la solicitud HTTP:", responseCode);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

        // Si no se pueden obtener los sessionIds, devuelve una cadena vacía
        return "";
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy