跳到主要内容

API 响应处理

返回文档导航


调用第三方 API 时,使用 JSONMap 解析嵌套 JSON 响应。

基本用法

String response = httpClient.get("https://api.example.com/user/info");
JSONMap data = new JSONMap(response);

// 深层取值
Integer code = data.getInt("code");
String userName = data.getStr("data.user.name");
String avatar = data.getStr("data.user.profile.avatar", "default.png");
List<String> roles = data.getList("data.user.roles", String.class);

案例

微信 API

String response = wechatApi.getUserInfo(openid);
JSONMap result = new JSONMap(response);

if (result.getInt("errcode", 0) != 0) {
throw new BusinessException(result.getStr("errmsg"));
}

String nickname = result.getStr("nickname");
String headimgurl = result.getStr("headimgurl");
Integer sex = result.getInt("sex");

支付回调

@PostMapping("/alipay/notify")
public String notify(@RequestBody String notifyData) {
JSONMap data = new JSONMap(notifyData);
String outTradeNo = data.getStr("out_trade_no");
String tradeStatus = data.getStr("trade_status");
Double totalAmount = data.getDouble("total_amount");
orderService.updateStatus(outTradeNo, tradeStatus, totalAmount);
return "success";
}

上一节:场景概览 | 返回文档导航 | 下一节:表单数据处理 →