E/RETROFIT ERROR﹕ com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path $
[
{
"route_id": 16,
"typeofmovement_name": "Type name",
"route_description": "Just default description and no more",
"route_name": "Default name",
"route_img_url": "place reserved for url",
"themes": [
"Theme name one",
"Theme name two"
],
"routeparts": [
{
"rp_id": 32,
"part_id": 1,
"rp_start_latitude": "59.935353200891576",
"rp_start_longitude": "30.31521778553724",
"rp_end_latitude": "59.93948523234933",
"rp_end_longitude": "30.314136184751987",
"rp_description": "Default Description",
"rp_title": "Default Title"
},
{
"rp_id": 33,
"part_id": 2,
"rp_start_latitude": "59.93948523234933",
"rp_start_longitude": "30.314136184751987",
"rp_end_latitude": "59.940330654891774",
"rp_end_longitude": "30.328612737357613",
"rp_description": "Default Description",
"rp_title": "Default Title"
},
{
"rp_id": 34,
"part_id": 3,
"rp_start_latitude": "59.940330654891774",
"rp_start_longitude": "30.328612737357613",
"rp_end_latitude": "59.934541749310746",
"rp_end_longitude": "30.33052649348974",
"rp_description": "Default Description",
"rp_title": "Default Title"
}
]
}
]
public class Route {
@SerializedName("route_id") private int routeId;
@SerializedName("typeofmovement_name") private String typeOfMove;
@SerializedName("route_description") private String routeDescription;
@SerializedName("route_name") private String routeTitle;
@SerializedName("route_img_url") private String imgUrl;
@SerializedName("themes") private String[] themes;
private List<Routeparts> routeparts;
Route() {
this.routeparts = new ArrayList<>();
}
class Routeparts {
int rp_id;
int part_id;
String rp_start_latitude;
String rp_start_longitude;
String rp_end_latitude;
String rp_end_longitude;
String rp_description;
String rp_title;
}
有改装API
@GET("/routes/{route_id}")
void getRouteInfo(@Path("route_id") String routeId, Callback<Route> callback);
附注。很抱歉可能的语法错误。
你的改装服务应该像
@GET("/Routes") void getRoutes(Callback<List<Route>> routesCallback);
你的电话应该是
RetrofitService.getRoutes(new Callback<List<Route>>() {
@Override public void success(List<Route> routes, Response response) {
//success
}
@Override public void failure(RetrofitError error) {
//error
}
});
如果您真的期望一个单一的路由,您将不得不更改服务器代码。
拜托,我有麻烦了。我想获取web api()上的所有实体
我正在尝试使用改版在我的应用程序上实现用户注册,但是我一直得到这个错误不确定是什么错误,java.lang.IllegalStateException:应该是BEGIN_OBJECT,但应该是BEGIN_ARRAY 这是邮递员的回复 } 我有两个模型类User模型类 和我的register类 如果可能的话有人帮我实现Kotlin coroutines
这是我的界面: 这是我希望将收到的数据转换到的县数据类: ...Getters和setters...
我如何使用改造来解析这个?我得到错误BEGIN_OBJECT但却是BEGIN_ARRAY 现在,我是这样分析的… 下面是adapter类 下面是接口RetroInterface.class 这是我在主要活动中的称呼 下面是json响应
我正在尝试解析JSON代码,如下所示: 这是我的apiinterface.java 这是我得到的错误: 应为BEGIN_OBJECT,但在第1行第2列处为BEGIN_ARRAY