前文:
- 这里是借助hutool简单实现彩虹屁API的信息获取,从而了解一个API接口调用和处理数据的简单过程。
正文如下:
1.测试类中的引用代码:
package com.alex.examples;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil;
import com.alex.examples.vo.CaiHongPiOneVo;
import com.alex.examples.vo.CaiHongPiTwoVo;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class ExamplesApplicationTests {
private static final String KEY = "改成自己的key";
private static final String RAINBOW_URL = "http://api.tianapi.com/caihongpi/index";
@Test
void contextLoads() {
}
public static void main(String[] args) {
HttpRequest request = HttpUtil.createGet(RAINBOW_URL + "?key=" + KEY);
HttpResponse response = request.execute();
String content = null;
CaiHongPiOneVo vo = JSONUtil.toBean(response.body(), CaiHongPiOneVo.class);
List<CaiHongPiTwoVo> newsList = vo.getNewslist();
if (CollectionUtil.isNotEmpty(newsList)) {
content = newsList.get(0).getContent();
}
System.out.println("正文:" + content);
}
}
2.对应的处理实体:
package com.alex.examples.vo;
import lombok.Data;
import java.io.Serializable;
@Data
public class CaiHongPiTwoVo implements Serializable {
private String content;
private String author;
}
package com.alex.examples.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class CaiHongPiOneVo implements Serializable {
private Integer code;
private String msg;
private List<CaiHongPiTwoVo> newslist;
}
<!-- hutool -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>4.1.1</version>
</dependency>
<!-- lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.4</version>
</dependency>
- 测试结果: