Skocz do zawartości
  • 0

JSON


maxcom1

Pytanie

7 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
Gość Usunięty#3468
    private GameProfile createProfile(String username) throws Exception {
        if (this.serverSettings.onlineMode()) {
            Gson gson = new Gson();
            String url = "https://api.mojang.com/users/profiles/minecraft/" + username;
            InputStream inputStream = new URL(url).openStream();
            String json = IOUtils.toString(inputStream);
            if (json.isEmpty()) {
                throw new Exception("Invalid nickname");
            }

            JsonObject jsonObject = gson.fromJson(json, JsonObject.class);
            String trimmeredUniqueId = jsonObject.get("id").getAsString();

            inputStream.close();
            return new StoneGameProfile(username, trimmeredUniqueId);
        } else {
            return new StoneGameProfile(username, UUID.nameUUIDFromBytes(("OfflinePlayer:" + username).getBytes()));
        }
    }

https://mvnrepository.com/artifact/com.google.code.gson/gson

https://mvnrepository.com/artifact/commons-io/commons-io/

Edytowane przez Sewer
Odnośnik do komentarza
https://skript.pl/temat/41423-json/#findComment-259208
Udostępnij na innych stronach

  • 0

błąd

String json = IOUtils.toString(inputStream);
java: method toString in class java.lang.Object cannot be applied to given types;
  required: no arguments
  found: java.io.InputStream
  reason: actual and formal argument lists differ in length

 

Odnośnik do komentarza
https://skript.pl/temat/41423-json/#findComment-259213
Udostępnij na innych stronach

  • 0

Mam wszystko zaimportowane i dodane biblioteki

 

import com.google.gson.Gson;
import org.apache.commons.io.IOUtils;
import org.json.JSONException;


import java.io.*;
import java.net.URL;

public class Main {
    public static void main (String[] args) throws IOException, JSONException {

        System.out.println("Działa!");
        System.out.println(" ");

        Boolean internetConnection = Functions.netIsAvailable();

        String ANSI_RED = "\u001B[31m";
        String ANSI_GREEN = "\u001B";

        if (internetConnection.equals(true)) {
            System.out.println(ANSI_GREEN + "Masz połączenie z internetem.");

            Gson gson = new Gson();
            String url = "https://status.mojang.com/check";
            InputStream inputStream = new URL(url).openStream();
            String json = IOUtils.toString(inputStream);

            System.out.println(json.toString());

        } else {
            System.out.println(ANSI_RED + "Brak połączenia z internetem.");
        }
    }

}

Konsola:

Spoiler

Działa!
 
\033[36mMasz połączenie z internetem.

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/gson/Gson
    at Main.main(Main.java:22)
Caused by: java.lang.ClassNotFoundException: com.google.gson.Gson
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
    ... 1 more

Process finished with exit code 0
 

 

Edytowane przez maxcom1
Peridot

Łączę

Notatka dodana przez Peridot

Odnośnik do komentarza
https://skript.pl/temat/41423-json/#findComment-259219
Udostępnij na innych stronach

  • 0
3 godziny temu, Sewer napisał:

    private GameProfile createProfile(String username) throws Exception {
        if (this.serverSettings.onlineMode()) {
            Gson gson = new Gson();
            String url = "https://api.mojang.com/users/profiles/minecraft/" + username;
            InputStream inputStream = new URL(url).openStream();
            String json = IOUtils.toString(inputStream);
            if (json.isEmpty()) {
                throw new Exception("Invalid nickname");
            }

            JsonObject jsonObject = gson.fromJson(json, JsonObject.class);
            String trimmeredUniqueId = jsonObject.get("id").getAsString();

            inputStream.close();
            return new StoneGameProfile(username, trimmeredUniqueId);
        } else {
            return new StoneGameProfile(username, UUID.nameUUIDFromBytes(("OfflinePlayer:" + username).getBytes()));
        }
    }

https://mvnrepository.com/artifact/com.google.code.gson/gson

https://mvnrepository.com/artifact/commons-io/commons-io/

Użyłem twój kod.

Błędy:

Exception in thread "main" com.google.gson.JsonSyntaxException: Expected a com.google.gson.JsonObject but was com.google.gson.JsonArray
	at com.google.gson.internal.bind.TypeAdapters$35$1.read(TypeAdapters.java:896)
	at com.google.gson.Gson.fromJson(Gson.java:888)
	at com.google.gson.Gson.fromJson(Gson.java:853)
	at com.google.gson.Gson.fromJson(Gson.java:802)
	at com.google.gson.Gson.fromJson(Gson.java:774)
	at Main.main(Main.java:42)

 

Odnośnik do komentarza
https://skript.pl/temat/41423-json/#findComment-259259
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...