文档

如何调试云上微服务API接口

更新时间:

本文介绍如何使用IntelliJ IDEA测试云上Spring Cloud或Dubbo服务接口功能。

流程图

image.jpeg

使用限制

Alibaba Cloud Toolkit插件为2023.6.1及以上版本。

权限说明

为防止对云上环境内的接口误调用,您需要具备以下权限:

  • 查看目标服务所在微服务空间的权限。

  • 查看目标服务的权限。

  • 调用目标服务接口的权限。

  1. 登录EDAS控制台
  2. 在左侧导航栏,选择系统管理 > 权限助手

  3. 权限助手页面,单击创建权限策略

  4. 创建权限策略配置向导页面的创建自定义权限策略页签,设置权限策略的策略名称备注

  5. 创建自定义权限策略页签,单击新增权限语句,在加授权语句面板,设置对应应用的查看权限和接口访问权限,然后单击确认

    1. 权限效力下方选择允许

    2. 操作资源授权区域的左侧权限列表,选择命名空间 > 查看命名空间应用 > 接口访问微服务 > 查看服务,在右侧资源列表中根据您的需求设置对应的地域微服务空间应用image.png

  6. 创建权限策略配置向导页面,单击下一步

  7. 策略预览页签预览权限,根据页面提示在RAM控制台创建自定义权限策略,并授权给对应的RAM用户,然后单击完成。更多信息,请参见步骤三:创建RAM用户并添加授权。控制台面板提示新增策略授权成功,单击返回列表查看返回权限助手页面,查看新建的权限策略模板。

操作步骤

  1. 在IntelliJ IDEA项目中,单击右键选择Alibaba Cloud > API调试,唤起API调试弹框。

    image.png
  2. 进行API接口调试。

    Spring Cloud接口调试

    image.jpeg

    参数说明:

    配置项

    说明

    示例值

    区域

    服务所在的地域。

    华东1(杭州)

    微服务空间

    服务所在的微服务空间。

    dev

    服务

    目标Spring Cloud服务。

    service-provider

    路径

    Spring Cloud服务接口路径。

    /echo/{string}

    指定目标调用

    是否指定目标调用。

    说明

    K8s应用重启后,IP会发生变化,非必要可不指定目标调用。

    Query参数

    Query参数。输入格式为key: value,多个键值分多行输入。

    color: blue

    fruit: orange

    Body

    POST和PUT接口的Body参数,支持如下几种类型:

    • x-www-form-urlencoded:参数输入格式为key: value,多个键值分多行输入。

    • json:参数输入格式为JSON字符串。

    • xml:参数输入格式为XML字符串。

    • text/plain:任意文本。

    例如JSON格式:

    {

    "name": "Jack",

    "age": 12

    }

    响应值说明:

    响应属性

    说明

    示例值

    Body

    接口的响应内容。

    {string} from service-provider-group-1-4-78d5d49bc8-m****

    Cookie

    接口返回的Cookie。

    Header

    接口返回的Header。

    Content-Length: text/plain;charset=UTF-8

    状态码及调用链

    包含如下内容:

    • 状态码:接口响应的状态码。

    • 耗时:接口调用耗时。

    • 大小:接口响应占用的内存空间。

    • 时间:接口调用时间。

    • 调用链:接口调用的链路跟踪详情。

    • 状态码:200

    • 耗时:758毫秒

    • 大小:293字节

    • 时间:2023-05-31 20:05:01

    • 调用链:无

    实际请求

    包含如下内容:

    • 请求URL:调用接口请求的URL。

    • Header:发送请求的Header。

    • 请求URL:

      http://192.168.XX.XX:18083/echo/hello

    • Header:

      Content-Type:application/x-www-form-urlencoded

    Dubbo接口调试

    image.jpeg

    参数说明:

    配置项

    说明

    示例值

    区域

    服务所在的区域。

    华东1(杭州)

    微服务空间

    服务所在的微服务空间。

    dev

    接口

    目标Dubbo接口。

    org.apache.dubbo.springboot.demo.DemoService(分组:dev, 版本:1.0.0)

    方法

    目标Dubbo接口的方法。

    sayHello(String)

    指定目标调用

    是否指定目标调用。

    说明

    K8s应用重启后,IP会发生变化,非必要可不指定目标调用。

    接口参数

    Dubbo方法的参数,格式为JSON数组,数组内元素与目标方法的参数一一对应。复杂参数的说明,请参见Dubbo接口参数说明

    ["Jack"]

    Attachment

    设置Dubbo方法的调用隐式参数。输入格式为key: value,多个键值分多行输入。

    color: blue

    fruit: orange

    响应值说明:

    响应属性

    说明

    示例值

    响应内容

    接口的响应内容。

    Hello Jack, from dubbo-provider-group-1-1-799c54cc5b-c****

    其他信息

    包含如下内容:

    • 目标:目标Dubbo请求地址。

    • 耗时:请求耗时。

    • 时间:请求的调用时间。

    • 调用链:接口调用的链路跟踪详情。

    目标:dubbo://10.0.0.1:20880

    耗时:1509毫秒

    时间:2023-05-31 20:44:06

    调用链:无

历史记录

历史记录可以保存最近的50条调用记录,您可单击历史记录去测试查看历史调用请求,并重现请求。

image.jpeg

联系我们

如您在使用上述功能过程中有任何问题,请加入钉群(钉群号:34556175)联系产品技术专家咨询处理。