NEWS
[gelöst] Steam API - JSON einlesen
-
Liebe Community,
Ziel:
geliefertes JSON von Steam API in Datenpunkte schreiben. (um Abhängig vom Spiel ein Scene auszulösen)Leider bin ich mit JSON noch nicht wirklich vertraut und komme mit meinem Blockly nicht weiter.
JSON gibts über:https://api.steampowered.com/ISteamUser/GetPlayerSummaries/v2/?key=STEAM_API_KEY&format=json&steamids=STEAMIDIch habe mich nach der Anleitung von machs-smart.de versucht und scheitere kläglich
Von Steam erhalte ich folgendes JSON:
{ "response": { "players": [ { "steamid": "xxxxxxxxxxxxxxxxx", "communityvisibilitystate": 3, "profilestate": 1, "personaname": "Bloop", "commentpermission": 2, "profileurl": "https://steamcommunity.com/id/bloop16/", "avatar": "https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c.jpg", "avatarmedium": "https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c_medium.jpg", "avatarfull": "https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c_full.jpg", "avatarhash": "ec64b177597656280c5064b41558bbbf039b342c", "lastlogoff": 1679833386, "personastate": 1, "primaryclanid": "103582791436382048", "timecreated": 1217974304, "personastateflags": 0, "loccountrycode": "AT", "locstatecode": "08" } ] } }Wenn ich nun in Block request ein Attribut setze erhalte ich diese nur bis response.players sobald ich dieses erweitern möchte (response.players.personaname) kommt undefined als Ergebnis

[{'steamid':'xxxxxxxxxxxxxxxxx','communityvisibilitystate':3,'profilestate':1,'personaname':'Bloop','commentpermission':2,'profileurl':'https://steamcommunity.com/id/bloop16/','avatar':'https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c.jpg','avatarmedium':'https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c_medium.jpg','avatarfull':'https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c_full.jpg','avatarhash':'ec64b177597656280c5064b41558bbbf039b342c','lastlogoff':1679833386,'personastate':1,'primaryclanid':'103582791436382048','timecreated':1217974304,'personastateflags':0,'loccountrycode':'AT','locstatecode':'08'}]Ich denke das Problem liegt an der [ Eckigen Klammer.
Wie kann ich in Attribut ein JSON Objekt auslesen?Herzlichen Dank!
-
Liebe Community,
Ziel:
geliefertes JSON von Steam API in Datenpunkte schreiben. (um Abhängig vom Spiel ein Scene auszulösen)Leider bin ich mit JSON noch nicht wirklich vertraut und komme mit meinem Blockly nicht weiter.
JSON gibts über:https://api.steampowered.com/ISteamUser/GetPlayerSummaries/v2/?key=STEAM_API_KEY&format=json&steamids=STEAMIDIch habe mich nach der Anleitung von machs-smart.de versucht und scheitere kläglich
Von Steam erhalte ich folgendes JSON:
{ "response": { "players": [ { "steamid": "xxxxxxxxxxxxxxxxx", "communityvisibilitystate": 3, "profilestate": 1, "personaname": "Bloop", "commentpermission": 2, "profileurl": "https://steamcommunity.com/id/bloop16/", "avatar": "https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c.jpg", "avatarmedium": "https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c_medium.jpg", "avatarfull": "https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c_full.jpg", "avatarhash": "ec64b177597656280c5064b41558bbbf039b342c", "lastlogoff": 1679833386, "personastate": 1, "primaryclanid": "103582791436382048", "timecreated": 1217974304, "personastateflags": 0, "loccountrycode": "AT", "locstatecode": "08" } ] } }Wenn ich nun in Block request ein Attribut setze erhalte ich diese nur bis response.players sobald ich dieses erweitern möchte (response.players.personaname) kommt undefined als Ergebnis

[{'steamid':'xxxxxxxxxxxxxxxxx','communityvisibilitystate':3,'profilestate':1,'personaname':'Bloop','commentpermission':2,'profileurl':'https://steamcommunity.com/id/bloop16/','avatar':'https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c.jpg','avatarmedium':'https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c_medium.jpg','avatarfull':'https://avatars.steamstatic.com/ec64b177597656280c5064b41558bbbf039b342c_full.jpg','avatarhash':'ec64b177597656280c5064b41558bbbf039b342c','lastlogoff':1679833386,'personastate':1,'primaryclanid':'103582791436382048','timecreated':1217974304,'personastateflags':0,'loccountrycode':'AT','locstatecode':'08'}]Ich denke das Problem liegt an der [ Eckigen Klammer.
Wie kann ich in Attribut ein JSON Objekt auslesen?Herzlichen Dank!
@bloop Versuch mal

denn players ist ein Array (erkennbar an der eckigen Klammer) mit nur einem Eintrag und der hat dann den Index 0
-
@bloop Versuch mal

denn players ist ein Array (erkennbar an der eckigen Klammer) mit nur einem Eintrag und der hat dann den Index 0
@ahnungsbefreit
Hat funktioniert!
Herzlichen Dank! -
@ahnungsbefreit
Hat funktioniert!
Herzlichen Dank!@bloop Dann bitte den Threat als "[Gelöst]" markieren durch Editieren der Überschrift Deines 1.Posts.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden
