在 Java 开发中,“API 接口调试”通常指后端接口(Controller / REST API)开发完成后,如何验证接口是否可用、参数是否正确、返回是否符合预期。下面从常用方式、工具、代码示例、最佳实践几个角度系统说明。
| 方式 | 适用场景 | 推荐指数 |
|---|---|---|
| Postman / Apifox | 最常用,图形化 | ⭐⭐⭐⭐⭐ |
| curl 命令 | 服务器 / 命令行 | ⭐⭐⭐⭐ |
| Swagger / Knife4j | 接口文档即调试 | ⭐⭐⭐⭐⭐ |
| JUnit + MockMvc | 单测 & 自动化 | ⭐⭐⭐⭐ |
| 浏览器 | GET 简单接口 | ⭐⭐⭐ |
| 日志 + Debug | 定位问题 | ⭐⭐⭐⭐ |
@RestController
@RequestMapping("/api/user")
public class UserController {
@GetMapping("/{id}")
public User getUser(@PathVariable Long id) {
return new User(id, "Tom");
}
@PostMapping
public String addUser(@RequestBody User user) {
return "add:" + user.getName();
}
}
http://localhost:8080/api/user/1Content-Type: application/json
{
"id": 1,
"name": "Tom"
}
✅ 优点:直观、可保存、可批量测试
# GET
curl http://localhost:8080/api/user/1
# POST
curl -X POST http://localhost:8080/api/user \
-H "Content-Type: application/json" \
-d '{"id":1,"name":"Tom"}'
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
</dependency>
http://localhost:8080/swagger-ui.html
✅ 可直接:
@SpringBootTest
@AutoConfigureMockMvc
class UserControllerTest {
@Autowired
MockMvc mockMvc;
@Test
void testGetUser() throws Exception {
mockMvc.perform(get("/api/user/1"))
.andExpect(status().isOk());
}
}
✅ 适合:
@RequestMapping✅ 开发时:
✅ 联调时:
✅ 上线前:
如果你愿意,可以告诉我:
我可以直接给你对应场景的调试模板。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。