Добавить параметр в тело с помощью библиотеки Scribe

Я занимаюсь разработкой приложения для Android и интегрировал библиотеку Scribe, чтобы установить http-соединение с OAuth1.0 с Magento. Моя проблема в том, что мне нужно отправить запрос с параметром в тело, но без ключа. Теперь я делаю логин правильно и у меня авторизован токен, я получаю продукты с сервера, категории, бла-бла... но я не могу оформить заказ, потому что всегда получаю код "401 Авторизация требуется". Я думаю, что проблема может быть по параметру в теле.

Мой код:

...
        @Override
        protected String doInBackground(String... json) {
           String result = null;
           org.scribe.model.Response response = null;
           String url = Global.BASE_URL + "cart/1";

           if(Global.TOKEN_AUTHORIZED != null) {
             OAuthRequest request = new OAuthRequest(Verb.POST, url);
             //I only need insert a json into body without key
             request.addBodyParameter(<I don't need a key>, json[0]);
             Global.OAUTH_SERVICE.signRequest(Global.TOKEN_AUTHORIZED, request);
             response = request.send();
           }

           if(response != null && response.getCode() == 200) {
             result = response.getBody();
           } else {
             result = "ERROR";
           }
           return result;
        }
...

Как мне поставить только параметр в теле, но без ключа, значение?

Заранее спасибо:)

1 ответ

Решение

Я нашел решение:

  1. Сначала необходимо добавить заголовок, чтобы сказать, что содержимое запроса является json
  2. Чтобы добавить один параметр в тело без ключа, в значении существует метод addPayload(String)

Теперь я получаю ответ с кодом 200:)

    if(Global.TOKEN_AUTHORIZED != null) {
        OAuthRequest request = new OAuthRequest(Verb.POST, url);
        request.addHeader("Content-Type", "application/json");
        request.addPayload(params[0]);
        Global.OAUTH_SERVICE.signRequest(Global.TOKEN_AUTHORIZED, request);
       response = request.send();
   }

Я надеюсь помочь кому-нибудь:)

Другие вопросы по тегам