IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Retrofit 2.0 Appel avec des arguments en paramètre à l'url


Sujet :

Android

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Par défaut Retrofit 2.0 Appel avec des arguments en paramètre à l'url
    Salut le forum !

    J'ai suivi le tutoriel Retrofit 2.0

    Cependant je n'arrive pas à faire un appel avec des arguments en paramètre à l'url.

    Je suis débutant dans ce domaine, on est d'accord que pour faire appel à

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @GET("/search/repositories")
        Call<List<Repo>> searchRepos(@Query("q") String query);
    je remplace la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     githubService.listRepos("florent37").enqueue(new Callback<List<Repo>>() {
    par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    githubService.searchRepos("picasso").enqueue(new Callback<List<Repo>>() {

    ce qui me donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    githubService.searchRepos("picasso").enqueue(new Callback<List<Repo>>() {
     
                @Override
                public void onResponse(Call<List<Repo>> call, Response<List<Repo>> response) {
     
                    if (response.isSuccessful()) {
     
                        List<Repo> listRepos = response.body(); //J'ai remplacé call par response.
                        afficherRepos(listRepos);
     
                    } else {
     
                        //appelé en cas d'erreur API / HTTP
                        if(response.code() == 405) {
                            MainActivity.this.notifyAll();
                        }
                    }
                }
     
                @Override
                public void onFailure(Call<List<Repo>> call, Throwable t) {
                    Log.d("Message", "Null: ");
                }
            });
    Je retrouve le message Null dans ma console.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Par défaut Il ne fallait pas renvoyer une liste
    Yop, bon j'ai trouvé, peux être que cela intéresse certaines personnes, en fait je renvoyais une liste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @GET("/search/repositories")
        Call<List<Repo>> searchRepos(@Query("q") String query);
    Alors que cet appel : https://api.github.com/search/repositories?q=picasso renvoi des objets. En effet lorsque l'on regarde ce que renvoie le lien, le texte commence par un { ce qui signifie que l'appel renvoie des variables.

    Alors qu'avec cet appel par exemple : https://api.github.com/users/android/repos
    Cet appel renvoie directement une liste car lorsque l'on regarde le premier caractère que renvoie cet appel, on constate qu'il commence par un [ qui signifie le début d'une liste.

    Donc bien faire attention, les {} lorsque ça renvoie des variables et [] une liste.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. iBatis, appel d'une procedure stockee avec des arguments par defat.
    Par mateu34 dans le forum Persistance des données
    Réponses: 2
    Dernier message: 05/07/2011, 15h36
  2. Démarrer un service avec des arguments
    Par erlou dans le forum VBScript
    Réponses: 1
    Dernier message: 24/07/2007, 12h03
  3. set_terminate : gestionnaire avec des arguments
    Par Patriarch24 dans le forum C++
    Réponses: 4
    Dernier message: 28/10/2006, 13h08
  4. Lancer un programme avec des arguments via IE...
    Par petozak dans le forum Général Conception Web
    Réponses: 6
    Dernier message: 24/03/2006, 11h51
  5. Réponses: 3
    Dernier message: 21/03/2006, 10h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo