1
Ich habe so viele Beispiele und Codes untersucht, aber immer noch bekomme ich die Antwort Auth Failed in Volley JsonArrayRequest. Kann mir jemand sagen, was ich hier falsch mache?Wie API Key in HTTP Header für URL-Authentifizierungstoken in Android Studio Volley hinzuzufügen?
Unten ist mein Code:
RequestQueue queue = Volley.newRequestQueue(act);
if (isOnline()) {
pDialog.show();
JsonArrayRequest jsonObjReq = new JsonArrayRequest(Request.Method.POST,
url, (String) null,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
Log.d("JSONArray Response", response.toString());
try {
listener.onResponse(response);
} catch (JSONException e) {
e.printStackTrace();
}
pDialog.hide();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d("JSONArray VolleyError", "Error: " + error.getMessage());
pDialog.hide();
if (error instanceof TimeoutError) {
listener.onError(timeout, timeoutTitle);
Toast.makeText(act,
"Bad Network, Try again",
Toast.LENGTH_LONG).show();
} else if (error instanceof NoConnectionError) {
listener.onError(poorNetwork, poorNetworkTitle);
Toast.makeText(act,
"Bad Network, Try again",
Toast.LENGTH_LONG).show();
} else if (error instanceof AuthFailureError) {
listener.onError(authorizationFailed, authorizationFailedTitle);
Toast.makeText(act,
"Auth failed",
Toast.LENGTH_LONG).show();
} else if (error instanceof ServerError) {
listener.onError(serverNotResponding, serverNotRespondingTitle);
/* Toast.makeText(act,
"Server Not Responding",
Toast.LENGTH_LONG).show();*/
} else if (error instanceof NetworkError) {
listener.onError(networkErrorMessage, networkErrorTitle);
Toast.makeText(act,
"Network Error",
Toast.LENGTH_LONG).show();
} else if (error instanceof ParseError) {
listener.onError(parseError, parseErrorTitle);
Toast.makeText(act,
"try again"+error.getMessage(),
Toast.LENGTH_LONG).show();
}
}
})
{
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
//add params <key,value>
params,put("api_key", "TOKEN");
params.put("username", "vicky");
params.put("password", "test123");
return params;
}
}
;queue.add(jsonObjReq);
ich dies für einen Tag stecke.
Veröffentlichen Sie Ihr Protokoll und überprüfen Sie gegebenes Recht API in Kopfzeilen – JUL2791
BasicNetwork.performRequest: Unerwarteter Antwortcode 403 für Url. onErrorResponse: JSONArray VolleyError – Vicky
Sie können ungültige ** api_key ** freundlich überprüfen und sein ** verbotener Fehler ** weiter google es. Verwenden Sie POSTMAN, um den API-Aufruf zu validieren (d. H. Serveranforderung und -antwort). Sein Plugin in Chrome. Prost – JUL2791