我想从Android将REST API发送到Parse服务器。是否为此推荐任何库或类?
我需要发送一个复杂的 API,如解析文档示例中所示:
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。我怎样才能像这样发送复杂的脚本?
当向 REST API 发出请求时,我通常使用 OkHttp by Square。
您可以使用所需的 JSON 对象制作 POST。看看Posting a String
部分的食谱页面。更改 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