Как создать заголовок залпа, имеющий «Content-Type», авторизационный токен и тело? - PullRequest
0 голосов
/ 08 января 2020

Я пытаюсь создать запрос на публикацию залпа для входа в систему, используя пользовательский сервер с oauth 2.0, используя токен аутентификации. Тело:

{
"customer": {
    "email": "example@gmail.com",
    "password":"12345"
  }
}

Я пробовал это

@Override
public Map<String, String> getHeaders() throws AuthFailureError {
       final Map<String, String> headers = new HashMap<>();
       headers.put("Content-Type", "application/json");
       headers.put("Authorization", "Bearer .....UzI1NiIsInR5cCI6IkpXVCJ9.....");
       headers.put("email",username.toString());
       headers.put("password",password.toString());
       headers.put("customer",headers.toString());

       Log.e("Json created", headers.toString());
       return headers;
}

1 Ответ

0 голосов
/ 09 января 2020

Сделайте это, если хотите передать данные как JSON body ..

String body = "{\"customer\":{\"email\":"+ username + ",\"password\":"+ password +"}}";

StringRequest stringRequest = new StringRequest(Request.Method.POST, url, response -> {
    //response here
}, error -> {
    //exceptions here
}) {
    @Override
    public byte[] getBody() throws AuthFailureError {
        return body.getBytes();
    }

    @Override
    public HashMap<String, String> getHeaders() throws AuthFailureError {
        final HashMap<String, String> headers = new HashMap<>();
        headers.put("Content-Type", "application/json");
        headers.put("Authorization", "Bearer .....UzI1NiIsInR5cCI6IkpXVCJ9.....");
        return headers;
    }
};
...