我有一个对象,作为另一个GET请求的响应接收它<代码>jsonElement。toString() 看起来像JSON数组:
[{"Id": 493,"Number":"380936831127","FriendNumber":"380682140976"},{"Id": 494,"Number":"380936831127","FriendNumber":"380638254108"}]
我需要通过另一个使用改装的POST请求发送此字符串。如何通过POST请求发送jsonElement或String对象?我的方法声明应该怎么看?例如:
@POST("/api/geo/getLoc")
public void getFriendsLocation(/* something */, Callback<JsonElement> response);
如果您通过请求体发送数据,您的实现应该如下所示:
>
@POST("/api/geo/getLoc")
public void getFriendsLocation(@Body YourClass classObject, Callback<JsonElement> response);
在post请求时直接使用您创建的类对象
getFriendsLocation(yourClassObjectThatIncludesFields, new Callback .... )
如果您通过参数发送数据,则可以使用Gson执行此操作。
>
假设您有一个类,该类包含id、number和FriendNumber等字段。定义函数:
public static Map<String, Object> getMapFromObject(Object o) {
Gson gson = new Gson();
Type stringObjectMap = new TypeToken<Map<String, Object>>() {
}.getType();
return gson.fromJson(gson.toJson(o), stringObjectMap);
}
设置你的api函数也是这样
@POST("/api/geo/getLoc")
public void getFriendsLocation(@QueryMap Map<String, Object>, Callback<JsonElement> response);
当您从您的字段发送post请求创建对象时,请像下面这样调用此函数
getFriendsLocation(getMapFromObject(yourClassObjectThatIncludesFields), new Callback .... )
我没有编写包含类定义和回调函数的完整代码,因为它们取决于您的自定义。我假设您需要发送正文,所以尝试第一种方式。
如果你还需要什么,请告诉我,希望有人能帮助我。 EDIT第一次没有提到它,但我的JSON不会总是使用相同的键(id、nom、slug)。
这是我的控制器: 这是我的配置: 这是类别类: 如果我尝试发送内容类型为application/json和以下正文的post请求: {“id”:8,“title”:“Паа”、“engTitle”:“Pizza”、“description”:null,“menuItems”:[{“id”:4,“title”:“Паааааааааааа”和“engTitle”:“Pepperoni”、“price
问题内容: 我正在使用Retrofit集成我的Web服务,但我不明白如何使用POST请求将JSON对象发送到服务器。我目前陷入困境,这是我的代码: 活动:- PostInterface:- 要求JSON:- 响应JSON:- 问题答案: 在gradle中使用这些 使用这两个POJO类........ LoginData.class LoginResult.class 像这样使用API 使用这样的呼
用简单的话来说,我想发送这个数据到服务器,使用Volley Post Request。 它有一个整数和一个字符串,我得到的响应是Jsonarray 我尝试过以下方法,但都不管用 > 因为它是json数组请求,我不能在参数中发送数据,因为第三个参数只需要JsonArray,我必须发送JsonObject,所以保持为null 我不能把它放在中,因为值的1是整数,并且它只接受字符串 getparams(
问题内容: 我只能从文档中运行hello world示例(GithubService)。 问题是当我运行我的代码时,出现以下错误, 使用JsonReader.setLenient(true)在第1行第1列路径$接受格式错误的JSON 我的API采用POST参数值,因此无需将其编码为JSON,但是它确实以JSON返回响应。 对于响应,我获得了使用工具生成的ApiResponse类。 我的界面: 这是
问题内容: 我已经开发了一个Java代码,该代码使用URL和HttpUrlConnection将以下cURL转换为Java代码。卷曲是: 我已经编写了此代码,但是它始终会给HTTP代码400错误的请求。我找不到丢失的内容。 问题答案: 你的JSON不正确。代替 写 因此,JSONObject.toString()应该只为外部对象调用一次。 另一件事(可能不是你的问题,但我想提一下): 为确保不会遇