Spring-AI 结合自定义 mcp server 实现飞书智能机器人

  1. 简介
    本文主要介绍基于 spring ai 自定义搭建 mcp 服务端和客户端,主要场景是:

基于本地的mcp服务让飞书机器人跟场景回答不同的问题

实现效果如下

最后附了源码链接.整体代码非常简单,容易上手。

2.概念
2.1 什么是 AI MCP?
MCP(Model Context Protocol) 是一种 ​标准化协议​,用来解决一个长期痛点:

👉 如何让 AI“安全、可控、标准化地”调用外部工具 / 系统能力?

它的核心目标不是“让 AI 更聪明”,而是:

让 AI 能调用真实系统
同时 避免 AI 乱编、乱连、乱访问
并且 工具接入方式统一
2.2 MCP 解决了什么问题?
1️⃣ 传统 Function Call 的问题
以 OpenAI Function Calling / Tool Calling 为例:

工具定义写死在 Prompt 或代码里
每个 AI 框架一套接口
权限 / 生命周期 / 连接管理全靠业务自己写
工具多了以后 极难维护
👉 在真实系统里会变成:

Prompt 很长
Tool 定义重复
不同 AI 模型不可复用
2️⃣ MCP 的解决思路
MCP 把 ​工具变成一个标准化的 Server​:

AI Model
|
| MCP 协议
|
MCP Client ────── MCP Server
├─ 查数据库
├─ 调内部系统
├─ 查文件
├─ 调 HTTP API
1.
2.
3.
4.
5.
6.
7.
8.
9.
AI ​不直接接触工具实现​,只通过 MCP 协议:

发现工具
调用工具
获取结构化结果

  1. 工程结构
    主要分为2个模块,mcp-server 和 mcp-client, mcp-client里面通过 java -jar 的形式运行 mcp 服务端,在 mcp-client 最终结合 AI 以及飞书机器人的集成实现消息的回复.
  1. 相关源码介绍
  2. 1 mcp 服务端
    服务端非常简单,例如保留一个天气的服务,只需要在方法上加入org.springframework.ai.tool.annotation.Tool; 注解即可

import io.kings1990.mcp.mcpserver.enums.WeatherType;
import io.kings1990.mcp.mcpserver.record.WeatherRequest;
import io.kings1990.mcp.mcpserver.record.WeatherResult;
import lombok.extern.slf4j.Slf4j;
import org.springframework.ai.tool.annotation.Tool;
import org.springframework.ai.tool.annotation.ToolParam;
import org.springframework.stereotype.Service;

@Service
@Slf4j
public class WeatherService {

@Tool(name = "getWeather", description = "查询指定城市的天气")
public WeatherResult getWeather(@ToolParam(description = "请求参数") WeatherRequest req) {
    log.info("MCP Tool getWeather called, city={}", req.city());
    return new WeatherResult(
            req.city(),
            WeatherType.SUNNY,
            "25°C",
            "°C",
            "mcp:getWeather"
    );
}

}
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
4.2 mcp客户端
4.2.1让 AI 集成 ToolCallbacks
@Configuration
public class AiConfig {

@Bean
public ChatClient chatClient(ChatClient.Builder builder, List<McpSyncClient> mcpSyncClients) {
    return builder
            .defaultSystem("你是一个AI助手,必须调用工具 kings-spring-ai-mcp-tools 下的方法,如果工具不可用,就明确说明无法调用工具,不要编造。")
            .defaultToolCallbacks(
                    SyncMcpToolCallbackProvider.builder()
                            .mcpClients(mcpSyncClients)
                            .build()
            )
            .build();
}

}
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
4.2.2基于飞书机器人的长链接集成,实现消息的自动回复
import cn.hutool.core.thread.ThreadUtil;
import com.lark.oapi.event.EventDispatcher;
import com.lark.oapi.service.im.ImService;
import com.lark.oapi.service.im.v1.model.P2MessageReceiveV1;
import com.lark.oapi.ws.Client;
import jakarta.annotation.Resource;
import org.springframework.beans.factory.DisposableBean;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;

@Component
public class LarkWsListener implements CommandLineRunner, DisposableBean {

@Resource
private LarkBotService botService;

@Resource
private Client.Builder larkWsBuilder;

@Override
public void run(String... args) {
    //verificationToken和 encryptionKey 可选,用于验证和解密事件
    EventDispatcher handler = EventDispatcher.newBuilder("", "")
            .onP2MessageReceiveV1(new ImService.P2MessageReceiveV1Handler() {
                @Override
                public void handle(P2MessageReceiveV1 event) throws Exception {

                    // 1) messageId 用于 reply
                    String messageId = event.getEvent().getMessage().getMessageId();

                    // 2) content 是 JSON 字符串,需要解析出文本
                    String contentJson = event.getEvent().getMessage().getContent();

                    System.err.println("收到消息: " + contentJson);

                    String userText = LarkMsgParser.extractText(contentJson);

                    ThreadUtil.execAsync(() -> {
                        botService.onUserMessage(messageId, userText);
                    });

                }
            })
            .build();

    // 建议把 appId/appSecret 放配置文件
    Client wsClient = larkWsBuilder.eventHandler(handler).build();

    wsClient.start();
}


@Override
public void destroy() throws Exception {

}

}
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
4.2.3 AI Api-Key 植入
我这边使用 zhipu ai. 这边可以获取 api-key.

加入依赖

org.springframework.ai spring-ai-starter-model-zhipuai 1. 2. 3. 4. 并且在配置中配置 api-key

spring:
ai:
zhipuai:
api-key: your_api_key_here
chat:
options:
model: glm-4.6
1.
2.
3.
4.
5.
6.
7.
5.启动
直接运行mcp-client 主程序,查看飞书机器人是否注册成功

connected to wss://msg-frontier.feishu.cn/
1.
启动成功后在飞书应用里输入例如北京,等待机器人回复
wap.ceshi11.asia/article/20260101_4052.shtml
wap.ceshi11.asia/article/20260101_4053.shtml
wap.ceshi11.asia/article/20260101_4054.shtml
wap.ceshi11.asia/article/20260101_4055.shtml
wap.ceshi11.asia/article/20260101_4056.shtml
wap.ceshi11.asia/article/20260101_4057.shtml
wap.ceshi11.asia/article/20260101_4058.shtml
wap.ceshi11.asia/article/20260101_4059.shtml
wap.ceshi11.asia/article/20260101_4060.shtml
wap.ceshi11.asia/article/20260101_4061.shtml
wap.ceshi11.asia/article/20260101_4062.shtml
wap.ceshi11.asia/article/20260101_4063.shtml
wap.ceshi11.asia/article/20260101_4064.shtml
wap.ceshi11.asia/article/20260101_4065.shtml
wap.ceshi11.asia/article/20260101_4066.shtml
wap.ceshi11.asia/article/20260101_4067.shtml
wap.ceshi11.asia/article/20260101_4068.shtml
wap.ceshi11.asia/article/20260101_4069.shtml
wap.ceshi11.asia/article/20260101_4070.shtml
wap.ceshi11.asia/article/20260101_4071.shtml
wap.ceshi11.asia/article/20260101_4072.shtml
wap.ceshi11.asia/article/20260101_4073.shtml
wap.ceshi11.asia/article/20260101_4074.shtml
wap.ceshi11.asia/article/20260101_4075.shtml
wap.ceshi11.asia/article/20260101_4076.shtml
wap.ceshi11.asia/article/20260101_4077.shtml
wap.ceshi11.asia/article/20260101_4078.shtml
wap.ceshi11.asia/article/20260101_4079.shtml
wap.ceshi11.asia/article/20260101_4080.shtml
wap.ceshi11.asia/article/20260101_4081.shtml
wap.ceshi11.asia/article/20260101_4082.shtml
wap.ceshi11.asia/article/20260101_4083.shtml
wap.ceshi11.asia/article/20260101_4084.shtml
wap.ceshi11.asia/article/20260101_4085.shtml
wap.ceshi11.asia/article/20260101_4086.shtml
wap.ceshi11.asia/article/20260101_4087.shtml
wap.ceshi11.asia/article/20260101_4088.shtml
wap.ceshi11.asia/article/20260101_4089.shtml
wap.ceshi11.asia/article/20260101_4090.shtml
wap.ceshi11.asia/article/20260101_4091.shtml
wap.ceshi11.asia/article/20260101_4092.shtml
wap.ceshi11.asia/article/20260101_4093.shtml
wap.ceshi11.asia/article/20260101_4094.shtml
wap.ceshi11.asia/article/20260101_4095.shtml
wap.ceshi11.asia/article/20260101_4096.shtml
wap.ceshi11.asia/article/20260101_4097.shtml
wap.ceshi11.asia/article/20260101_4098.shtml
wap.ceshi11.asia/article/20260101_4099.shtml
wap.ceshi11.asia/article/20260101_4100.shtml
wap.ceshi11.asia/article/20260101_4101.shtml
wap.ceshi11.asia/article/20260101_4102.shtml
wap.ceshi11.asia/article/20260101_4103.shtml
wap.ceshi11.asia/article/20260101_4104.shtml
wap.ceshi11.asia/article/20260101_4105.shtml
wap.ceshi11.asia/article/20260101_4106.shtml
wap.ceshi11.asia/article/20260101_4107.shtml
wap.ceshi11.asia/article/20260101_4108.shtml
wap.ceshi11.asia/article/20260101_4109.shtml
wap.ceshi11.asia/article/20260101_4110.shtml
wap.ceshi11.asia/article/20260101_4111.shtml
wap.ceshi11.asia/article/20260101_4112.shtml
wap.ceshi11.asia/article/20260101_4113.shtml
wap.ceshi11.asia/article/20260101_4114.shtml
wap.ceshi11.asia/article/20260101_4115.shtml
wap.ceshi11.asia/article/20260101_4116.shtml
wap.ceshi11.asia/article/20260101_4117.shtml
wap.ceshi11.asia/article/20260101_4118.shtml
wap.ceshi11.asia/article/20260101_4119.shtml
wap.ceshi11.asia/article/20260101_4120.shtml
wap.ceshi11.asia/article/20260101_4121.shtml
wap.ceshi11.asia/article/20260101_4122.shtml
wap.ceshi11.asia/article/20260101_4123.shtml
wap.ceshi11.asia/article/20260101_4124.shtml
wap.ceshi11.asia/article/20260101_4125.shtml
wap.ceshi11.asia/article/20260101_4126.shtml
wap.ceshi11.asia/article/20260101_4127.shtml
wap.ceshi11.asia/article/20260101_4128.shtml
wap.ceshi11.asia/article/20260101_4129.shtml
wap.ceshi11.asia/article/20260101_4130.shtml
wap.ceshi11.asia/article/20260101_4131.shtml
wap.ceshi11.asia/article/20260101_4132.shtml
wap.ceshi11.asia/article/20260101_4133.shtml
wap.ceshi11.asia/article/20260101_4134.shtml
wap.ceshi11.asia/article/20260101_4135.shtml
wap.ceshi11.asia/article/20260101_4136.shtml
wap.ceshi11.asia/article/20260101_4137.shtml
wap.ceshi11.asia/article/20260101_4138.shtml
wap.ceshi11.asia/article/20260101_4139.shtml
wap.ceshi11.asia/article/20260101_4140.shtml
wap.ceshi11.asia/article/20260101_4141.shtml
wap.ceshi11.asia/article/20260101_4142.shtml
wap.ceshi11.asia/article/20260101_4143.shtml
wap.ceshi11.asia/article/20260101_4144.shtml
wap.ceshi11.asia/article/20260101_4145.shtml
wap.ceshi11.asia/article/20260101_4146.shtml
wap.ceshi11.asia/article/20260101_4147.shtml
wap.ceshi11.asia/article/20260101_4148.shtml
wap.ceshi11.asia/article/20260101_4149.shtml
wap.ceshi11.asia/article/20260101_4150.shtml
wap.ceshi11.asia/article/20260101_4151.shtml
wap.ceshi11.asia/article/20260101_4152.shtml
wap.ceshi11.asia/article/20260101_4153.shtml
wap.ceshi11.asia/article/20260101_4154.shtml
wap.ceshi11.asia/article/20260101_4155.shtml
wap.ceshi11.asia/article/20260101_4156.shtml
wap.ceshi11.asia/article/20260101_4157.shtml
wap.ceshi11.asia/article/20260101_4158.shtml
wap.ceshi11.asia/article/20260101_4159.shtml
wap.ceshi11.asia/article/20260101_4160.shtml
wap.ceshi11.asia/article/20260101_4161.shtml
wap.ceshi11.asia/article/20260101_4162.shtml
wap.ceshi11.asia/article/20260101_4163.shtml
wap.ceshi11.asia/article/20260101_4164.shtml
wap.ceshi11.asia/article/20260101_4165.shtml
wap.ceshi11.asia/article/20260101_4166.shtml
wap.ceshi11.asia/article/20260101_4167.shtml
wap.ceshi11.asia/article/20260101_4168.shtml
wap.ceshi11.asia/article/20260101_4169.shtml
wap.ceshi11.asia/article/20260101_4170.shtml
wap.ceshi11.asia/article/20260101_4171.shtml
wap.ceshi11.asia/article/20260101_4172.shtml
wap.ceshi11.asia/article/20260101_4173.shtml
wap.ceshi11.asia/article/20260101_4174.shtml
wap.ceshi11.asia/article/20260101_4175.shtml
wap.ceshi11.asia/article/20260101_4176.shtml
wap.ceshi11.asia/article/20260101_4177.shtml
wap.ceshi11.asia/article/20260101_4178.shtml
wap.ceshi11.asia/article/20260101_4179.shtml
wap.ceshi11.asia/article/20260101_4180.shtml
wap.ceshi11.asia/article/20260101_4181.shtml
wap.ceshi11.asia/article/20260101_4182.shtml
wap.ceshi11.asia/article/20260101_4183.shtml
wap.ceshi11.asia/article/20260101_4184.shtml
wap.ceshi11.asia/article/20260101_4185.shtml
wap.ceshi11.asia/article/20260101_4186.shtml
wap.ceshi11.asia/article/20260101_4187.shtml
wap.ceshi11.asia/article/20260101_4188.shtml
wap.ceshi11.asia/article/20260101_4189.shtml
wap.ceshi11.asia/article/20260101_4190.shtml
wap.ceshi11.asia/article/20260101_4191.shtml
wap.ceshi11.asia/article/20260101_4192.shtml
wap.ceshi11.asia/article/20260101_4193.shtml
wap.ceshi11.asia/article/20260101_4194.shtml
wap.ceshi11.asia/article/20260101_4195.shtml
wap.ceshi11.asia/article/20260101_4196.shtml
wap.ceshi11.asia/article/20260101_4197.shtml
wap.ceshi11.asia/article/20260101_4198.shtml
wap.ceshi11.asia/article/20260101_4199.shtml
wap.ceshi11.asia/article/20260101_4200.shtml
wap.ceshi11.asia/article/20260101_4201.shtml
wap.ceshi11.asia/article/20260101_4202.shtml
wap.ceshi11.asia/article/20260101_4203.shtml
wap.ceshi11.asia/article/20260101_4204.shtml
wap.ceshi11.asia/article/20260101_4205.shtml
wap.ceshi11.asia/article/20260101_4206.shtml
wap.ceshi11.asia/article/20260101_4207.shtml
wap.ceshi11.asia/article/20260101_4208.shtml
wap.ceshi11.asia/article/20260101_4209.shtml
wap.ceshi11.asia/article/20260101_4210.shtml
wap.ceshi11.asia/article/20260101_4211.shtml
wap.ceshi11.asia/article/20260101_4212.shtml
wap.ceshi11.asia/article/20260101_4213.shtml
wap.ceshi11.asia/article/20260101_4214.shtml
wap.ceshi11.asia/article/20260101_4215.shtml
wap.ceshi11.asia/article/20260101_4216.shtml
wap.ceshi11.asia/article/20260101_4217.shtml
wap.ceshi11.asia/article/20260101_4218.shtml
wap.ceshi11.asia/article/20260101_4219.shtml
wap.ceshi11.asia/article/20260101_4220.shtml
wap.ceshi11.asia/article/20260101_4221.shtml
wap.ceshi11.asia/article/20260101_4222.shtml
wap.ceshi11.asia/article/20260101_4223.shtml
wap.ceshi11.asia/article/20260101_4224.shtml
wap.ceshi11.asia/article/20260101_4225.shtml
wap.ceshi11.asia/article/20260101_4226.shtml
wap.ceshi11.asia/article/20260101_4227.shtml
wap.ceshi11.asia/article/20260101_4228.shtml
wap.ceshi11.asia/article/20260101_4229.shtml
wap.ceshi11.asia/article/20260101_4230.shtml
wap.ceshi11.asia/article/20260101_4231.shtml
wap.ceshi11.asia/article/20260101_4232.shtml
wap.ceshi11.asia/article/20260101_4233.shtml
wap.ceshi11.asia/article/20260101_4234.shtml
wap.ceshi11.asia/article/20260101_4235.shtml
wap.ceshi11.asia/article/20260101_4236.shtml
wap.ceshi11.asia/article/20260101_4237.shtml
wap.ceshi11.asia/article/20260101_4238.shtml
wap.ceshi11.asia/article/20260101_4239.shtml
wap.ceshi11.asia/article/20260101_4240.shtml
wap.ceshi11.asia/article/20260101_4241.shtml
wap.ceshi11.asia/article/20260101_4242.shtml
wap.ceshi11.asia/article/20260101_4243.shtml
wap.ceshi11.asia/article/20260101_4244.shtml
wap.ceshi11.asia/article/20260101_4245.shtml
wap.ceshi11.asia/article/20260101_4246.shtml
wap.ceshi11.asia/article/20260101_4247.shtml
wap.ceshi11.asia/article/20260101_4248.shtml
wap.ceshi11.asia/article/20260101_4249.shtml
wap.ceshi11.asia/article/20260101_4250.shtml
wap.ceshi11.asia/article/20260101_4251.shtml
wap.ceshi11.asia/article/20260101_4252.shtml
wap.ceshi11.asia/article/20260101_4253.shtml
wap.ceshi11.asia/article/20260101_4254.shtml
wap.ceshi11.asia/article/20260101_4255.shtml
wap.ceshi11.asia/article/20260101_4256.shtml
wap.ceshi11.asia/article/20260101_4257.shtml
wap.ceshi11.asia/article/20260101_4258.shtml
wap.ceshi11.asia/article/20260101_4259.shtml
wap.ceshi11.asia/article/20260101_4260.shtml
wap.ceshi11.asia/article/20260101_4261.shtml
wap.ceshi11.asia/article/20260101_4262.shtml
wap.ceshi11.asia/article/20260101_4263.shtml
wap.ceshi11.asia/article/20260101_4264.shtml
wap.ceshi11.asia/article/20260101_4265.shtml
wap.ceshi11.asia/article/20260101_4266.shtml
wap.ceshi11.asia/article/20260101_4267.shtml
wap.ceshi11.asia/article/20260101_4268.shtml
wap.ceshi11.asia/article/20260101_4269.shtml
wap.ceshi11.asia/article/20260101_4270.shtml
wap.ceshi11.asia/article/20260101_4271.shtml
wap.ceshi11.asia/article/20260101_4272.shtml
wap.ceshi11.asia/article/20260101_4273.shtml
wap.ceshi11.asia/article/20260101_4274.shtml
wap.ceshi11.asia/article/20260101_4275.shtml
wap.ceshi11.asia/article/20260101_4276.shtml
wap.ceshi11.asia/article/20260101_4277.shtml
wap.ceshi11.asia/article/20260101_4278.shtml
wap.ceshi11.asia/article/20260101_4279.shtml
wap.ceshi11.asia/article/20260101_4280.shtml
wap.ceshi11.asia/article/20260101_4281.shtml
wap.ceshi11.asia/article/20260101_4282.shtml
wap.ceshi11.asia/article/20260101_4283.shtml
wap.ceshi11.asia/article/20260101_4284.shtml
wap.ceshi11.asia/article/20260101_4285.shtml
wap.ceshi11.asia/article/20260101_4286.shtml
wap.ceshi11.asia/article/20260101_4287.shtml
wap.ceshi11.asia/article/20260101_4288.shtml
wap.ceshi11.asia/article/20260101_4289.shtml
wap.ceshi11.asia/article/20260101_4290.shtml
wap.ceshi11.asia/article/20260101_4291.shtml
wap.ceshi11.asia/article/20260101_4292.shtml
wap.ceshi11.asia/article/20260101_4293.shtml
wap.ceshi11.asia/article/20260101_4294.shtml
wap.ceshi11.asia/article/20260101_4295.shtml
wap.ceshi11.asia/article/20260101_4296.shtml
wap.ceshi11.asia/article/20260101_4297.shtml
wap.ceshi11.asia/article/20260101_4298.shtml
wap.ceshi11.asia/article/20260101_4299.shtml
wap.ceshi11.asia/article/20260101_4300.shtml
wap.ceshi11.asia/article/20260101_4301.shtml
wap.ceshi11.asia/article/20260101_4302.shtml
wap.ceshi11.asia/article/20260101_4303.shtml
wap.ceshi11.asia/article/20260101_4304.shtml
wap.ceshi11.asia/article/20260101_4305.shtml
wap.ceshi11.asia/article/20260101_4306.shtml
wap.ceshi11.asia/article/20260101_4307.shtml
wap.ceshi11.asia/article/20260101_4308.shtml
wap.ceshi11.asia/article/20260101_4309.shtml
wap.ceshi11.asia/article/20260101_4310.shtml
wap.ceshi11.asia/article/20260101_4311.shtml
wap.ceshi11.asia/article/20260101_4312.shtml
wap.ceshi11.asia/article/20260101_4313.shtml
wap.ceshi11.asia/article/20260101_4314.shtml
wap.ceshi11.asia/article/20260101_4315.shtml
wap.ceshi11.asia/article/20260101_4316.shtml
wap.ceshi11.asia/article/20260101_4317.shtml
wap.ceshi11.asia/article/20260101_4318.shtml
wap.ceshi11.asia/article/20260101_4319.shtml
wap.ceshi11.asia/article/20260101_4320.shtml
wap.ceshi11.asia/article/20260101_4321.shtml
wap.ceshi11.asia/article/20260101_4322.shtml
wap.ceshi11.asia/article/20260101_4323.shtml
wap.ceshi11.asia/article/20260101_4324.shtml
wap.ceshi11.asia/article/20260101_4325.shtml
wap.ceshi11.asia/article/20260101_4326.shtml
wap.ceshi11.asia/article/20260101_4327.shtml
wap.ceshi11.asia/article/20260101_4328.shtml
wap.ceshi11.asia/article/20260101_4329.shtml
wap.ceshi11.asia/article/20260101_4330.shtml
wap.ceshi11.asia/article/20260101_4331.shtml
wap.ceshi11.asia/article/20260101_4332.shtml
wap.ceshi11.asia/article/20260101_4333.shtml
wap.ceshi11.asia/article/20260101_4334.shtml
wap.ceshi11.asia/article/20260101_4335.shtml
wap.ceshi11.asia/article/20260101_4336.shtml
wap.ceshi11.asia/article/20260101_4337.shtml
wap.ceshi11.asia/article/20260101_4338.shtml
wap.ceshi11.asia/article/20260101_4339.shtml
wap.ceshi11.asia/article/20260101_4340.shtml
wap.ceshi11.asia/article/20260101_4341.shtml
wap.ceshi11.asia/article/20260101_4342.shtml
wap.ceshi11.asia/article/20260101_4343.shtml
wap.ceshi11.asia/article/20260101_4344.shtml
wap.ceshi11.asia/article/20260101_4345.shtml
wap.ceshi11.asia/article/20260101_4346.shtml
wap.ceshi11.asia/article/20260101_4347.shtml
wap.ceshi11.asia/article/20260101_4348.shtml
wap.ceshi11.asia/article/20260101_4349.shtml
wap.ceshi11.asia/article/20260101_4350.shtml
6.源码
github 仓库. 可以 star 查看后续更新

Fast Request是一个类似于 Postman 的 IDEA 插件。它是一个强大的 restful api 工具包插件,可以根据已有的方法帮助您快速生成 url 和 params。 Restful Fast Request = API调试工具 + API管理工具 + API搜索工具。 它有一个漂亮的界面来完成请求、检查服务器响应、存储你的 api 请求和导出 api 请求。插件帮助你在 IDEA 界面内更快更高效得调试你的 API。

讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!