Beiträge von MichiVIP

    Hallo,


    falls ich dich richtig verstanden habe, versuchst du einen einzelnen Wert in einem verschachtelten Dokument zu setzen. Um dies umzusetzen verwendest du in MongoDB die Verkettung durch Punkte. Dementsprechend würde deinen code, um den Wert "KILLS" zu updaten so aussehen:

    Java
    1. mongoManager.getUser().updateOne(Filters.eq("UUID", uuid.toString()), new Document("$set", new Document("STATS.KILLS", stats.getKills())));

    Ich hoffe, dass ich deine Frage richtig verstanden habe und die Antwort hilfreich war.

    Hallo,


    der beste Weg, um so etwas zu realisieren wäre, aus den dir zur Verfügung stehenden JAR-Files eine lokale maven repository zu erstellen. Das geht mit der maven-commandline sehr einfach mit dem install-file Befehl. In diesem Fall ist mein working directory der Projekt-Ordner, also der, in welchem sich auch die pom.xml und dein src Ordner befinden. Der Befehl akzeptiert einige Grundargumente, dessen Funktionsweise in der folgenden Tabelle einzusehen sind:

    Argumentname Beschreibung Beispiel
    -Dfile Der Dateipfad zu der JAR-Datei, die "installiert" werden soll.
    dep/SimpleBukkitDependency-1.10.9.jar
    -DgroupId Die Group ID der maven dependency.
    me.michivip
    -DartifactId Die Artifact ID der maven dependency.
    SimpleBukkitDependency
    -Dversion DIe Version der maven dependency.
    1.10.9
    -Dpackaging Das packaging der maven dependency (normalerweise jar).
    jar
    -DlocalRepositoryPath Der Ordner, in welchem das lokale repository installiert werden soll, da ansonsten das maven repository des jeweiligen Benutzers verwendet wird.
    dep/


    Dieser Code zeigt ein Beispiel:

    Shell-Script: mvn deploy Befehl
    1. mvn install:install-file -Dfile=dep/SimpleBukkitDependency-1.10.9.jar -DgroupId=me.michivip -DartifactId=SimpleBukkitDependency -Dversion=1.10.9 -Dpackaging=jar -DlocalRepositoryPath=dep/

    Danach kannst du deine dependency ganz einfach wie folgt einbinden (du müsstest dann eventuell veränderte Variablen dementsprechend anpassen):

    Ich hoffe, dass dir diese Anleitung helfen konnte. Falls du Rückfragen hast, stehe ich dir gerne zur Verfügung.

    Nur als kleine Randbemerkung für zM4xi , das englische "one billion" entspricht der Zahl 1.000.000.000 (im Deutschen "eine Milliarde"). Es nutzen zwar schon viele Geräte Java, eine Billionen sind es dann aber doch noch nicht :D.


    Trotzdem schließe ich mich dir an, da Java momentan immer noch die am weitesten verbreitete Sprache ist. Trotz anderer neuer Programmiersprachen, die ebenfalls an Zuwachs gewinnen, wird Java weiterhin seine Popularität behalten. Da man mit Java nicht wirklich Webentwicklung betreiben kann (ich sage extra nicht wirklich :D ), ist es trotzdem keine schlechte Idee, auch in Sachen Webentwicklung auf der Höhe zu sein. So kannst du dann beispielsweise dein Backend in Java schreiben und dein Frontend in Frontendsprachen, wie HTML, CSS oder JavaScript.

    Es wäre gut, wenn wir den Host kennen würden, da sonst eine Fernanalyse sehr schwierig ist. Ansonsten könntest du auch mit openssl Client ein TLS Handshake durchführen und ausgeben lassen, falls dort ein Problem auftritt.

    Ich möchte dir nicht zu nahe treten aber ich glaube dass es nicht wirklich viel bringt, diesen Beitrag weiterhin zu pushen.


    Die besten Anwendungen/Anbieter wurden scheinbar schon genannt und durch deine Pushes wird sich auch kein neuer Service auftun.


    Ich hatte noch diesen Anbieter ( https://net2ftp.com/ ) gefunden, weiß jedoch nicht, ob dieser deinen Anforderungen entspricht.

    Es wäre nützlich, wenn du in Zukunft deine Stacktraces auch selber einmal durchlesen würdest, denn dann wäre dir folgender Satz aufgefallen:

    The client has sent too many requests within a certain amount of time

    Übersetzt auf Deutsch heißt das ungefähr:

    Der Klient hat zu viele Anfragen in einer gewissen Zeit gesendet


    Du versuchst anscheinend das GameProfile eines Spielers zu "fetchen" - die REST-API von Mojang lässt jedoch nur eine Anfrage pro Spieler vom gleichen Sender pro Minute zu:

    This has a much stricter rate limit: You can request the same profile once per minute, however you can send as many unique requests as you like.

    Du solltest die "value", also das GameProfile cachen, sodass du dein Anfragenlimit nicht überschreitest.

    Um BloomCake Beitrag ein wenig konstruktiver auszuformulieren:

    Ihr habt zwar unter dem Port 443 eine SSL verschlüsselten Web-Server stehen, jedoch leitet ihr Nutzer, die sich auf dem Port 80 verbinden, nicht auf die verschlüsselte Verbindung weiter. Dies würde mit einem redirect Header funktionieren. Unter nginx würde folgender Block alle Anfragen auf http://domain.tdl nach https://domain.tdl mit dem Status 301 (Permanent redirect) weiterleiten:

    Code
    1. server {
    2. listen 80;
    3. server_name domain.tdl;
    4. return 301 https://$host$request_uri;
    5. }

    Das Problem bei deinem Code liegt darin, dass wenn der String in sehr lang ist, durch die String concatenation (Verkettung) immer wieder das out Objekt neu instanziiert wird - ich würde daher auf einen StringBuilder zurück greifen, sodass der Code wie folgt aussehen würde:

    Zitat von Cloudflare

    please contact Cloudflare support.

    Du solltest den Support anschreiben und möglichst genau das Problem beschreiben, sodass du von der Blacklist genommen wirst.

    Kannst du mal Debugnachrichten einfügen, um herauszufinden, wo genau der Fehler auftritt?


    Des Weiteren schreibst du im ersten Beitrag:

    gesehen, wie man Icons herunterlädt.

    In einem darauffolgenden Beitrag schreibst du jedoch Folgendes:

    habe gerade ein Icon manuell hochgeladen

    Was denn nun jetzt? Willst du ein Icon heruntergeladen oder willst du ein Icon hochladen?


    Es wäre hilfreich, wenn du diese beiden Fragen beantworten könntest.

    Ja, das lag wahrscheinlich daran, dass dein Bot zu schnell Anfragen geschickt hat und den maximalen Flood Wert überschritten hat. Meines Wissens gibt es sogar eine Funktion in der besagten API, diese Flood-Sperre zu verhindern.


    Aber jetzt wieder zurück zum eigentlichen Problem/Thema.

    Naja, wenn er das noch nicht getan hat, könnte der Bot nicht joinen und ihm eine Nachricht senden...

    Die Datei dient nur dazu, Floods zu verhindern - solange die Anfragen unter der festgelegten Grenze liegen, braucht die IP des Clients auch nicht in der Whitelist Datei zu stehen.

    Ich habe den Code nun einmal selber ausprobiert und bei mir funktioniert es ohne Probleme. Auch ein entsprechender Error tritt nicht auf. Ansonsten wäre es eine Idee (falls du das noch nicht getan hast) deine IP in die query_ip_whitelist.txt einzutragen.

    In Zeile 43 setzt du den Host auf "bla". Routest du den auf den passenden Host um? Ansonsten würde dies den Connect Fehler erklären.

    Des Weiteren schriebst du, dass der Bot dir eine Wilkommensnachricht schickt - bist du dir sicher, dass das der richtige Bot ist, also kein anderer Bot diese Wilkommensnachricht verschickt?

    Es wäre auf jeden Fall eine gute Idee, den betreffenden Teil deines Codes deinem Beitrag beizufügen, da es ansonsten schwierig wird, zu helfen. Ich kann mir nämlich nicht vorstellen, dass ein vom Autoren geliefertes Beispiel nicht funktionieren sollte.