Получи JSON с залпом с учетными данными - PullRequest
0 голосов
/ 30 марта 2020

Мне нужно получить JSON от URL с Volley с учетными данными, но у меня есть эта ошибка Errorcom.android.volley.authfailureerror. Я уже пробовал сохранить JSON в http://myjson.com/ и все это довольно хорошо, но с учетными данными с моего сайта нет. Может кто-нибудь, пожалуйста, помогите мне с этой проблемой.

 requestQueue = Volley.newRequestQueue(this); 

JsonArrayRequest request = new JsonArrayRequest(Request.Method.GET, url, null, new Response.Listener<JSONArray>() {
    @Override
    public void onResponse(JSONArray response) {
        Toast toast = Toast.makeText(getApplicationContext(), "Ok", Toast.LENGTH_SHORT);
        toast.show();
    }}, new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {
        Toast toast = Toast.makeText(getApplicationContext(), "Error" + error.toString(), Toast.LENGTH_SHORT);
        toast.show();
    }}) {
    @Override
    public Map<String, String> getHeaders() throws AuthFailureError {
        Map<String, String> headers = new HashMap<>();
        String credentials = "xxx:xxx";
        String auth = "Basic " + Base64.encodeToString(credentials.getBytes(), Base64.NO_WRAP);
        headers.put("Content-Type", "application/json");
        headers.put("Authorization", auth);

        return headers;
    }
};

Я тоже пробовал то же самое в c#, и все работает отлично.

using (var client = new WebClient())
{
  client.Credentials = new NetworkCredential("xxx", "xxx");
  var json1 = client.DownloadString(url);
}
...