2016-01-28 2 views
0

Я хочу отправить REST API на сервер Parse от Android. Является ли какая-либо библиотека или класс рекомендованными для этого?Отправить REST API для анализа с Android

Мне нужно отправить сложный API, как в примере Анализировать Docs:

curl -X POST \ 
    -H "X-Parse-Application-Id: ${APPLICATION_ID}" \ 
    -H "X-Parse-REST-API-Key: ${REST_API_KEY}" \ 
    -H "Content-Type: application/json" \ 
    -d '{ 
     "where": { 
      "user": { 
      "$inQuery": { 
       "location": { 
       "$nearSphere": { 
        "__type": "GeoPoint", 
        "latitude": 30.0, 
        "longitude": -20.0 
       }, 
       "$maxDistanceInMiles": 1.0 
       } 
      } 
      } 
     }, 
     "data": { 
      "alert": "Free hotdogs at the Parse concession stand!" 
     } 
     }' \ 
    https://api.parse.com/1/push 

библиотеки я видел отправить REST API в формате, который имеет заголовок и затем пары строк. Как я могу отправить сложный скрипт следующим образом?

ответ

0

При обращении к REST API я обычно использую OkHttp by Square.

Вы можете сделать POST с помощью объекта JSON, который вам нужен. Взгляните на recipes page на номер Posting a String. Изменение MEDIATYPE для application/json, построить свой JSONObject и передать его в Request

Request request = new Request.Builder() 
     .url("https://api.parse.com/1/push") 
     .post(RequestBody.create(MEDIA_TYPE_JSON, json.toString())) 
     .build(); 

Для того, чтобы построить JSONObject вы можете основывать свой код в этом фрагменте:

JSONObject outer = new JSONObject(); 
    JSONObject inner = new JSONObject(); 
    inner.put("key", "value"); 
    outer.put("otherJSON", inner); 
    System.out.println(outer); 

Результатом этого println является {"otherJSON":{"key":"value"}}, так что вы можете разместить как можно больше объектов в JSONObject

+0

Спасибо, я попробую. – Alex

+0

Итак, если я правильно понимаю, я могу поместить все данные объекта в виде строки, включая круглые скобки и двоеточия? – Alex

+0

Да, но я думаю, что было бы проще создать JSONObject со всей информацией и добавить его в запрос тела. – Pelocho

Смежные вопросы