从 OkHttp 响应中获取值 Java
Get values from OkHttp Response Java
我正在尝试从 OkHttp 响应正文字符串中获取值,但出现以下错误
java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
响应正文字符串如下所示( response.body().toString() )
{
"MerchantRequestID":"000000000000",
"CheckoutRequestID":"170220202216211826",
"ResponseCode": "0",
"ResponseDescription":"Request accepted for processing",
"CustomerMessage":"Request accepted for processing"
}
我是这样解析的
Gson g = new Gson();
SuccessResponse resp = g.fromJson(resp.body().toString(),SuccessResponse.class);
如何从响应字符串中获取各个值。
您可以使用该字段创建 POJO(手动或使用 this 等服务)。然后你可以这样创建你的 POJO 实例:
String json = "{'MerchantRequestID': '000000000000','CheckoutRequestID':'170220202216211826','ResponseCode': '0','ResponseDescription':'Request accepted for processing','CustomerMessage':'Request accepted for processing'}";
Gson g = new Gson();
Example example = g.fromJson(json, Example.class);
System.out.print(example.getCheckoutRequestID());
我正在尝试从 OkHttp 响应正文字符串中获取值,但出现以下错误
java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
响应正文字符串如下所示( response.body().toString() )
{
"MerchantRequestID":"000000000000",
"CheckoutRequestID":"170220202216211826",
"ResponseCode": "0",
"ResponseDescription":"Request accepted for processing",
"CustomerMessage":"Request accepted for processing"
}
我是这样解析的
Gson g = new Gson();
SuccessResponse resp = g.fromJson(resp.body().toString(),SuccessResponse.class);
如何从响应字符串中获取各个值。
您可以使用该字段创建 POJO(手动或使用 this 等服务)。然后你可以这样创建你的 POJO 实例:
String json = "{'MerchantRequestID': '000000000000','CheckoutRequestID':'170220202216211826','ResponseCode': '0','ResponseDescription':'Request accepted for processing','CustomerMessage':'Request accepted for processing'}";
Gson g = new Gson();
Example example = g.fromJson(json, Example.class);
System.out.print(example.getCheckoutRequestID());