Android volley Come submit la richiesta con entrambe le intestazioni di authentication e l'object Json nel corpo

Devo submit tramite volley una richiesta http con l'intestazione di authentication e l'object Json nel corpo. Bu non ho trovato una richiesta per questo in volley.

Ho trovato GsonRequest e JsonObjectRequest. Metodo GsonRequest int, Url String, Classe clazz, Intestazioni mappa, Listener listener, ErrorListener errorListener, Gson useGson)

  • Cartella Bluetooth, path diverso su diversi telefoni
  • non è stato ansible accedere al gestore pacchetti. è il sistema in esecuzione durante l'installazione di applicazioni Android
  • Ottieni l'ultimo valore inserito dal database sqlite Android
  • Collegamento di FFTW in un'applicazione Android NDK
  • Come sapere se è stata stabilita una chiamata?
  • Accesso non definito chiave Google API API
  • JsonObjectRequest (metodo int, java.lang.String url, jsonRequest di JSONObject , listener di Response.Listener, errorListener di Response.ErrorListener)

    Hai idea di cosa fare?

  • Libreria VoIP per Android
  • Creare un servizio Android con il phonegap? (Avere applicazione phonegap anche quando è chiusa)
  • ZipEntry.getTime () risultati imprevedibili
  • android studio 0.4.2: errore sincronizzazione progetto Gradle
  • Come trovare la connessione a Internet è disponibile o less su Android 4G?
  • Stringa random dall'elenco delle stringhe di stringhe
  • 3 Solutions collect form web for “Android volley Come submit la richiesta con entrambe le intestazioni di authentication e l'object Json nel corpo”

    Nella class Richiesta, sovrascrivere getHeaders() per submit intestazioni personalizzate

    Per submit i parametri nel corpo di richiesta è necessario ignorare il metodo getParams () o getBody () delle classi di richiesta

    qui descritto:

    Richieste HTTP asincrone in Android utilizzando Volley

    provare questo codice

     @Override public Map<String, String> getHeaders() throws AuthFailureError { HashMap<String, String> params = new HashMap<String, String>(); String creds = String.format("%s:%s","USERNAME","PASSWORD"); String auth = "Basic " + Base64.encodeToString(creds.getBytes(), Base64.DEFAULT); params.put("Authorization", auth); return params; } 

    Entrambi i methods getHeaders () e getParams () possono essere usati contemporaneamente per submit i dati separatamente come intestazione e corpo.

     JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { Log.d(TAG, response.toString()); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { Log.d(TAG, error.toString()); } }) { @Override public Map<String, String> getHeaders() throws AuthFailureError { HashMap<String, String> headers = new HashMap<>(); headers.put(headerKey, headerValue); return headers; } @Override protected Map<String, String> getParams() throws AuthFailureError { Map<String, String> params = new HashMap<>(); params.put(bodyKey, bodyValue); return params; } }; VolleySingleton.getInstance(getActivity()).addToRequestQueue(jsonObjectRequest); 

    Questo ha funzionato per me !!

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.