Отправить заголовок и данные (тело) в виде строки в залпе - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь отправить сообщение на мой сервер.
Мой сервер прочитал Заголовки запроса в Формат строки , но getHeaders () в возврате залпа:
Карта

Можно ли отправить заголовки запроса в строковом формате?!

это мой запрос кода:

Map<String, String> params = new HashMap<String, String>();
    params.put("MY_FIRST_DATA_KEY", "MY_FIRST_DATA_VALUE");
    params.put("MY_SECOND_DATA_KEY", "MY_SECOND_DATA_VALUE");

    String url = "http://MY_URL.com";

    JsonObjectRequest request = new JsonObjectRequest(Request.Method.POST, url, new JSONObject(params), new Response.Listener<JSONObject>() {
        @Override
        public void onResponse(JSONObject response) {
            Log.e(TAG, "onResponse: " + response.toString() );
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Log.e(TAG, "onErrorResponse: " + error.toString() );
            error.printStackTrace();
        }
    })
    {
        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            Map<String,String> headers = new HashMap<String, String>();
            headers.put("Content-Type", "application/json");
            headers.put("MY_KEY","MY_VALUE");
            /* HERE i need to return a String Value */
            return headers;
        }
    };

    request.setRetryPolicy(new DefaultRetryPolicy(20000 , 3 , 3));
    Volley.newRequestQueue(context).add(request);

Ответы [ 2 ]

0 голосов
/ 02 июля 2018

Вы можете добавить getParams () в JsonObjectRequest ()

@Override
public Map<String, String> getParams() {
  Map<String, String> params = new HashMap<String, String>();
  params.put("Parameter1", "value");
  params.put("Parameter2", "value");
  return params;
}

Надеюсь, это поможет.

0 голосов
/ 02 июля 2018

попробуйте переопределить getParams()

    @Override
    protected Map<String,String> getParams(){
        Map<String, String> params = new HashMap<String, String>();
        params.put("MY_FIRST_DATA_KEY", "MY_FIRST_DATA_VALUE");
        params.put("MY_SECOND_DATA_KEY", "MY_SECOND_DATA_VALUE");

        return params;
    }
...