JSON Abfragefehler mit JSON.NET [C#]

  • C#
  • .NET (FX) 4.5–4.8

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Mr. C-Sharp.

    JSON Abfragefehler mit JSON.NET [C#]

    Liebes Forum!

    Folgendes Problem:

    Das Programm ließt JSON Dateien vom Pstats-Network aus um die Statistiken von einem Spieler zu erfassen und im Programm anzuzeigen.
    jedoch bekomme ich seit heute den Fehler

    Ein Ausnahmefehler des Typs "Newtonsoft.Json.JsonReaderException" ist in Newtonsoft.Json.dll aufgetreten.
    Unexpected character encountered while parsing value: h. Path '', line 0, position 0.

    wenn das Programm in der PlayerInfoAndStatistics.cs an dem Punkt

    C#-Quellcode

    1. JObject o = JObject.Parse(UrlPlayerInfo);


    ankommt.

    alles zur API vom Pstats-Network findet ihr hier:

    bf4stats.com/api

    die Daten des Spielers werden zb. unter der URL api.bf4stats.com/api/playerInf…name=Expandus&output=json vom Programm heruntergeladen und dann nach der Auswertung einzelner Parameter in einer neuen form angezeigt.

    Bitte schaut zuerst in den Quellcode, da das Programm doch etwas komplexer ist, als es im ersten Moment zu sein scheint!

    Battlefield 4 statistics viewer.zip

    Ich hoffe, dass Ihr mir weiterhelfen könnt!

    Lg Mr. C-Sharp
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Mr. C-Sharp“ ()

    Du brauchst die URL: api.bf4stats.com/api/playerInf…name=Expandus&output=json
    dein Output ist gerade JS-Code. Falls du die alte URL verwenden willst, kannst du auch

    Quellcode

    1. var pd=
    entfernen.

    Lg Mokki
    ​Smartnotr - ein intelligentes Notizprogramm
    zum Thread

    Was meinst du mit entfernen? ich kann die Datei ja nicht bearbeiten weil das Programm das ganze einfach im Hintergrund vom Server herunterlädt. als Format nutze ich im Programm JSON. Sonst guck dir doch mal bitte den Source an. Eventuell findest du ja den Fehler?
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!
    ja deshalb nutze ich im Programm ja auch die URL die du oben angegeben hast. Trotzdem tritt der Fehler bei mir auf.
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!
    Ich hab oben diese URL verlinkt: http://api.bf4stats.com/api/playerInfo?plat=ps4&name=Expandus&output=json
    Du hast bei dir diese URL verlinkt: http://api.bf4stats.com/api/playerInfo?plat=ps4&name=Expandus&output=js
    Der Unterschied liegt bei Parameter Output: &output=json (meine URL) &output=js (deine URL)

    Lg Mokki
    ​Smartnotr - ein intelligentes Notizprogramm
    zum Thread

    Ich habe mich lediglich verschrieben. Die Endung war im Programm schon immer JSON. Jedoch tritt der Fehler immer auf. Egal welche Endung ich nutze/einstelle. Komischerweise hat es noch funktioniert als ich das Programm das letzte mal weiterentwickelt habe.
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Mr. C-Sharp“ ()

    Dein Aufruf sieht wie folgt aus:

    C#-Quellcode

    1. JObject o = JObject.Parse(UrlPlayerInfo);

    In der UrlPlayerInfo Variable befindet sich lediglich der Link (api.bf4stats.com/api/playerInf…name=Expandus&output=json), du musst wie bei "OnlinePlayers()" erst mal den Inhalt runterladen.
    Danke für die Antwort!

    Auf genau diese Weise habe ich das ganze vorhin auch umgesetzt und das problem gelöst :D
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!