0
votes

Faire une demande postale à API dans Android Studio

J'essaie de faire une demande postale à une API que j'ai créée dans Visual Studio. L'API fonctionne et j'ai finalement réussi à trouver du code qui me permet de me connecter (et ce n'est pas obsolète). Le problème est que ce code a été fait pour une demande d'obtention pendant que je dois faire un message. J'ai créé deux cases où j'insère les données que je veux passer (utente, mot de passe) et j'ai créé un bouton qui prend les données du Boxex et les convertit en chaîne.

J'ai essayé déjà de chercher beaucoup d'exemples et de tutoriels qui montrent comment faire une demande postale, mais la majorité sont très âgées et ne fonctionne plus dans le studio Android, ou du moins, je ne peux pas leur faire fonctionner. P>

Maintenant, il s'agit de la fonction qui devrait être l'envoi des données, je n'ai pas touché le code car je ne sais pas vraiment quoi modifier sauf la méthode de la demande. P>

private StringRequest searchNameStringRequest(final String utente, final String password)
    {
        String url = "http://192.168.1.11:57279/api/utente";
        StringRequest request = new StringRequest(Request.Method.POST, url, new Response.Listener<String>()
        {
            @Override
            public void onResponse(String response)
            {
                System.out.println(response);
            }
        }, new Response.ErrorListener()
        {

            @Override
            public void onErrorResponse(VolleyError error)
            {
                Toast.makeText(MainActivity.this,"Service Unavailable",Toast.LENGTH_SHORT).show();
                error.printStackTrace();
            }
        })
        {
            @Override
            protected Map<String, String> getParams()
            {
                Map<String,String> map = new HashMap<>();
                map.put("user", utente.trim());
                map.put("password",password.trim());
                return map;
            }
        };
        RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext());
        requestQueue.add(request);
        return request;
    }


1 commentaires

3 Réponses :


0
votes
        String url = "your url";
    StringRequest request = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
        @Override
        public void onResponse(String response) {
            System.out.println(response);
            dialog.dismiss();
            try {
// your logic when API sends your some data
                    }
                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                dialog.dismiss();
                Toast.makeText(context,"Service Unavailable",Toast.LENGTH_SHORT).show();
                error.printStackTrace();
            }
        }){
//This is how you will send the data to API
            @Override
            protected Map<String, String> getParams(){
                Map<String,String> map = new HashMap<>();
                map.put("name",username.getText().toString());
                map.put("password",password.getText().toString());
                return map;
            }
        };
        RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext());
        requestQueue.add(request);
    }

3 commentaires

J'ai essayé votre réponse et ça va au service indisponible, c'est un problème avec l'API Droite?


Avez-vous ajouté cette dans votre manifeste ??


Oui, j'essaie de voir le commentaire de Saltae pour le faire fonctionner



0
votes

Voici un bon tutoriel, je l'ai essayé et cela a fonctionné de manière transparente.

Login Android et enregistrement avec PHP, MySQL et SQLite

Vous pouvez sauter la partie SQLite et la partie phpmyadmin.


1 commentaires

Merci de votre réponse, j'ai réussi à résoudre ce problème après cette question: Stackoverflow.com/questions/33573803/...



1
votes

Cela fonctionne après cette question:

Comment envoyer une demande postale en utilisant Volley avec corps de cordes?

Merci à vous tous pour votre intérêt.


0 commentaires