I am attempting to get values from my api which has API key and value for simple security.
When I use postman, it works well and only returns value when api key and its value matches like so.
The Authorization uses Key and Value as Header which responds with data.
I am attempting to get the same result with android volley and getting no success.
RequestQueue queue = Volley.newRequestQueue(this);
String url = "http://10.0.2.2:8080/api/mynewapp";
JsonArrayRequest request = new JsonArrayRequest(Request.Method.GET, url, null, new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
for (int i = 0; i < response.length(); i++) {
try {
JSONObject reqobject = response.getJSONObject(i);
int petId = reqobject.getInt("petId");
String petName = reqobject.getString("petName");
Log.i("petName : ", petName);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
}
})
{
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json");
headers.put("petsapiheader977", "petsapikey977");
return headers;
}
};
queue.add(request);
I am getting error right now.
W/System.err: com.android.volley.NoConnectionError: java.net.SocketException: socket failed: EACCES (Permission denied)