0
votes

Flotter ne retourne pas un appel d'API

Alors j'essaie d'analyser le JSON avec http ma méthode d'analyse de cet xxx pré>

et c'est mon appel de demande: p> xxx pré>

J'ai essayé de le revenir dans une liste mais je viens d'obtenir la même erreur et les mêmes conseils? p>

L'erreur que je reçois est: p>

TypeError (Type 'List' n'est pas un sous-type de type 'carte') p> blockQuote>

sur la ligne p> xxx pré>

merci! p>

Je ne suis pas sûr que ce ne soit pas cartographié correctement ou que je suis en train de gâcher l'appel lui-même. De toute façon, j'ai été extrêmement exclu sur ceci depuis 30 m et ne peut pas sembler le résoudre. Mis à jour avec JSON: P>

[
  {
    "user_id": "9795284",
    "username": "SakuraMotion",
    "join_date": "2017-02-24 17:41:13",
    "count300": "4185533",
    "count100": "658232",
    "count50": "65063",
    "playcount": "26008",
    "ranked_score": "8509686083",
    "total_score": "20977676803",
    "pp_rank": "84295",
    "level": "99.3547",
    "pp_raw": "3333.68",
    "accuracy": "95.1374740600586",
    "count_rank_ss": "5",
    "count_rank_ssh": "0",
    "count_rank_s": "477",
    "count_rank_sh": "1",
    "count_rank_a": "950",
    "country": "US",
    "total_seconds_played": "1475942",
    "pp_country_rank": "14224",
    "events": [
      {
        "display_html": "<img src='/images/C_small.png'/> <b><a href='/u/9795284'>SakuraMotion</a></b> achieved rank #842 on <a href='/b/1771455?m=3'>Cranky vs. MASAKI - ouroboros -twin stroke of the end- [4K CS' Normal]</a> (osu!mania)",
        "beatmap_id": "1771455",
        "beatmapset_id": "845135",
        "date": "2019-10-19 01:24:15",
        "epicfactor": "1"
      },
      {
        "display_html": "<img src='/images/B_small.png'/> <b><a href='/u/9795284'>SakuraMotion</a></b> achieved rank #812 on <a href='/b/2115037?m=0'>Kousaka Honoka (CV: Nitta Emi) - Snow halation (HONOKA Mix) [Devotion]</a> (osu!)",
        "beatmap_id": "2115037",
        "beatmapset_id": "982344",
        "date": "2019-10-19 01:08:44",
        "epicfactor": "1"
      },
      {
        "display_html": "<img src='/images/B_small.png'/> <b><a href='/u/9795284'>SakuraMotion</a></b> achieved rank #377 on <a href='/b/2173646?m=0'>Roselia - Charles [Expert]</a> (osu!)",
        "beatmap_id": "2173646",
        "beatmapset_id": "1032239",
        "date": "2019-10-19 01:05:46",
        "epicfactor": "1"
      },
      {
        "display_html": "<img src='/images/B_small.png'/> <b><a href='/u/9795284'>SakuraMotion</a></b> achieved rank #70 on <a href='/b/2123647?m=0'>Reol - Jitter Doll [Extra]</a> (osu!)",
        "beatmap_id": "2123647",
        "beatmapset_id": "1010993",
        "date": "2019-10-19 01:02:50",
        "epicfactor": "1"
      }
    ]
  }
]


8 commentaires

salut taylor. Pouvez-vous nous fournir un exemple de JSON résultant lorsque vous faites l'appel? Cela nous fournira une certaine indice sur ce qui semble être le problème.


Si vous utilisez attendre n'utilise pas , puis , par exemple: var données = Await OSU (nom d'utilisateur) .fetchuser ();


Salut désolé je dormais quand vous avez répondu que j'ai mis à jour le PO avec le JSON, je m'attends à retourner


Ouais je reçois le même problème.


Voici ce que je reçois lorsque j'ajoute que imgur.com/a/b1rnjia


J'ai également mis à jour la réponse Data.Body JSON en op avec les sorties de cette impression.


Bonjour, je ne sais pas si vous avez vu mais j'ai déjà mis à jour le message d'origine avec ce que la sortie est en bas.


Oh, il n'a jamais rien imprimé car le programme s'est écrasé avant qu'il ne soit arrivé à la déclaration d'impression


3 Réponses :


0
votes

Faites attention à l'erreur car il indique clairement votre problème: Type 'List' List 'n'est pas un sous-type de type' Carte , pas sûr s'il est en réalité sur la récupération mais

Trouver la documentation pour https://osu.ppy.sh/api/get_user API et confirmer la réponse. Vous pouvez également tester la ligne de commande en faisant:

curl -x obtenir https://osu.ppy.sh/api/get_user&u=username&k=key et assurez-vous que vous obtenez 200 et une structure correcte.


0 commentaires

0
votes

Je pense que l'erreur est sur cette ligne xxx

le résultat du fichier json.decode (données.body) est en fait une liste mais vous l'avez attribuée à mapper

Je pense que vous pouvez le changer en xxx

ou xxx

Si vous avez vraiment besoin de mapper, vous pouvez mapper il plus tard de la liste


0 commentaires

0
votes

Il existe une multitude de raisons pour lesquelles vous pourriez avoir l'erreur ... Il serait avantageux de fournir un échantillon du JSON que l'API est de retourner.

Vous pouvez vérifier votre userinfo () ... a le champ suivant: xxx

double Vérifiez si les événements provenant du JSON sont vraiment une liste.

Si vous avez un problème avec un complexe d'analyse Fichiers JSON ... Mieux vaut utiliser jsonserializable https://flutter.dev/docs/development/data-and-backend/json#Creatier-model-classes-the-json_rserializable-way


0 commentaires