gpt4 book ai didi

android - 我没有使用 Retrofit Android 从 REST API 获得响应

转载 作者:行者123 更新时间:2023-11-30 00:23:07 26 4
gpt4 key购买 nike

下面是我从 REST API 得到的响应

{
"statusCode": "200",
"statusData": "Updated Successfully",
"responseData": {
"bookingId": null,
"customerName": null,
"customerMobileNumber": null,
"patientMobileNumber": null,
"driverMobileNumber": "9090909090",
"deviceToken": "f4kc2epndRA:APA91bEXrl4OmlfRUU2M_mfj3khz53_-OgrOk_lpdYWg8hz4hN4yWEogL3eMobH9nPERyO13UN88zQQDUZn262VBv3gICv9BcNECppuJ_G0SlE-1qn57X5w9kMN_q9MXb6ilXQnlIl0A",
"bookedBy": null,
"emergencyType": null,
"emergencyLatitude": 17.443277115352867,
"emergencyLongitude": 78.45206458121537,
"emergencyGeoHashCode": null,
"hospital": null,
"customerId": 0,
"bookingForSelf": 0,
"bookingStatus": "ACCEPTED",
"customerApp": null,
"groupTypeId": 0,
"groupId": 0,
"gcmToken": null,
"hospitalLatitude": 17.8979999,
"hospitalLongitude": 78.7879989,
"hospitalGeoHashCode": null,
"vehicleNumber": null,
"driverName": "santhosh",
"ambulance_start_latitude": 17.786889,
"ambulance_start_longitude": 78.786999,
"vehicle_id": 1,
"booking_id": 201708240006,
"accepted_datetime": 1503556227596,
"vehicleAttributes": null,
"driverImage": "XXXXXX/pic1.png",
"duration": null,
"distance": null
}
}

下面是我试过的代码,BookingAcceptedResponseData 是 POJO 类

    final Call<BookingAcceptedResponseData> upDBooking = apiService.updateBookingStat(updateBookingMap);

upDBooking.enqueue(new Callback<BookingAcceptedResponseData>() {
@Override
public void onResponse(Call<BookingAcceptedResponseData> call, Response<BookingAcceptedResponseData> response) {

System.out.println("####### Basic updateBookingStat response.body() : "+response.body());
System.out.println("####### Basic toString updateBookingStat response.body() : "+response.body().toString());

try {
if (response.body() != null) {
System.out.println("####### updateBookingStat response.body() : "+response.body().toString());
Intent it = new Intent(MainActivity.this, DashBoardActivity.class);
it.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//it.putExtra("bookingDetails", bookingDetails);

finish();

}
}catch (Exception e){
e.printStackTrace();
}
}

@Override
public void onFailure(Call<BookingAcceptedResponseData> call, Throwable t) {

}
});

我从 REST API 调用中得到的响应为 packageName@XXXX 我没有得到实际数据。请帮助我。

最佳答案

您的响应 JSON 对象包含 JSON 对象名称 responseData 以获取 responseData 您需要进行以下更改。试试这个可能对你有帮助。

将响应 BookingAcceptedResponseData 更改为以下 BookingAcceptedResponse 类

public class BookingAcceptedResponse{
private int statusCode;
private String statusData;
private BookingAcceptedResponseData responseData;
//TODO
//generate getter and setter
}

Inside retro call 响应方式改变

response.body().getResponseData();

这将为您返回正确的数据

关于android - 我没有使用 Retrofit Android 从 REST API 获得响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45912280/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com