1
私は非常に多くのサンプルとコードを調べましたが、まだボレーのJsonArrayRequestでAuth Failedという応答が表示されています。誰が私がここで何をしているのか分かりません。私は一日のためにこれを立ち往生していますアンドロイドスタジオボレーのURL認証トークン用にHTTPヘッダーにAPIキーを追加するにはどうすればよいですか?
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);
:
以下は私のコードです。
あなたのログを投稿し、ヘッダーに正しいapiが指定されているか確認してください。 – JUL2791
BasicNetwork.performRequest:URLの予期しない応答コード403。 onErrorResponse:JSONArray VolleyError – Vicky
あなたは無効な** api_key **を親切にチェックし、その**禁止されたエラー**をGoogleに送ることができます。 POSTMANを使用してAPI呼び出し(つまり、サーバーの要求と応答)を検証します。 Chromeのプラグイン。乾杯 – JUL2791