J'essaie d'envoyer une requête DELETE en utilisant Volley à une API REST avec des paramètres comme X-user-email et X-User-token. J'ai essayé presque tout sur Internet mais je reçois toujours un message d'erreur 400.Demander Delete using Volley Android
Quand j'utilise le POST Demander son travail, donc je pense que la même chose pour le SUPPRIMER, je viens de changer:
(Request.Method.POST, url, params, new Response.Listener<JSONObject>() {...}
par
(Request.Method.DELETE, url, params, new Response.Listener<JSONObject>() {...}
Il est mon code suivant:
MainActivity.java
disconnect.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {;
JSONObject params = new JSONObject();
try {
params.put("X-User-Email", "[email protected]");
params.put("X-User-Token", "QwerTyuI789IOP");
} catch (JSONException e) {
e.printStackTrace();
}
NetworkManager.getInstance(v.getContext()).delete("http://10.0.2.2:3000/users/sign_out", params, new NetworkManager.NetworkManagerListener<String>() {
@Override
public void getResult(String response)
{
if (!response.isEmpty())
{
result.setText(response.toString());
Log.e("Response", response.toString());
}
}
});
}
});
NetworkManager.java
public void delete(String url, JSONObject params, final NetworkManagerListener<String> listener) {
JsonObjectRequest request = new JsonObjectRequest
(Request.Method.DELETE, url, params, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d(TAG + ": ", "delete onResponse : " + response.toString());
if (null != response.toString())
listener.getResult(response.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
if (null != error.networkResponse) {
Log.d(TAG + ": ", "delete Error Response code: " + error.networkResponse.statusCode);
listener.getResult(error.toString());
}
}
}) {
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put("Accept", "application/json");
params.put("Content-type", "application/json");
return params;
}
};
;
requestQueue.add(request);
}
Savez-vous comment résoudre ce problème? merci de me lire.
Gotcha, merci! –