⌘CtrlK
Appearance
Appearance
报文的类型是有很多种的,常用的有定长报文、键值报文、XML报文、JSON报文、二进制报文等,以下就对这几种报文做相应的介绍,并配简单的示例。 开发门户 > API管理 > 我的发布中,如下表格中的发布类型对应的转换类型为支持的可以配置报文转换规则,可以自定义发送业务服务的请求头、请求报文和业务服务返回客户端的响应头、响应报文。
| 发布类型 | 请求报文转换 | 响应报文转换 |
|---|---|---|
| HTTP穿透 | 支持 | 支持 |
| WebService穿透 | 支持 | 支持 |
| HTTP路由 | 不支持 | 不支持 |
| WS转HTTP | 支持 | 支持 |
| HTTP转WS | 支持 | 支持 |
| SAP转HTTP | 不支持 | 不支持 |
| SAP转WS | 不支持 | 不支持 |
| JDBC转HTTP | 不支持 | 不支持 |
| JMS转HTTP | 支持 | 不支持 |
| JMS转WS | 支持 | 不支持 |
| HTTP转JMS | 支持 | 不支持 |
| JMS穿透 | 支持 | 不支持 |
| GRPC转HTTP | 不支持 | 不支持 |
| Dubbo转HTTP | 不支持 | 不支持 |
| API编排 | 不支持 | 不支持 |
说明:
HTTP穿透发布类型展示。请求报文:
{"id":"33","name":"名称1","isbn":"isbn1","author":"作者1","price":45.32}响应报文:
{
"id": "33",
"name": "名称1",
"address": "地址1",
"price": 45.32,
"book": {
"id": "1",
"name": "书籍1",
"chapters": {
"name": "第一章",
"description": "第一章描述"
}
},
"pics": [{
"id": "1",
"name": "图片1"
},{
"id": "2",
"name": "图片2"
}
]
}请求报文转换规则:
| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文体 | $.id | $.newId | 否 | |
| 响应报文转换 | 报文体 | $.name | $.newName | 否 | |
| 响应报文转换 | 报文体 | $.book.name | $.book.bName | 修改的书籍名称 | 否 |
| 响应报文转换 | 报文体 | $.pics[1].name | $.pics[1].pName | 否 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“接口名称”,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文体 | $.URL | www.baidu.com | 否 | |
| 响应报文转换 | 报文体 | $.desc | 描述信息 | 否 | |
| 响应报文转换 | 报文体 | $.book.time | 2024-01-01 | 否 | |
| 响应报文转换 | 报文体 | $.pics[0].title | 图片标题1 | 否 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“接口名称”,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文体 | $.author | 否 | ||
| 响应报文转换 | 报文体 | $.address | 否 | ||
| 响应报文转换 | 报文体 | $.book.name | 否 | ||
| 响应报文转换 | 报文体 | $.pics[1].id | 否 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击操作栏中的“编辑”按钮,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文体 | $.author | 作者1-修改 | 否 | |
| 响应报文转换 | 报文体 | $.address | 地址1-修改 | 否 | |
| 响应报文转换 | 报文体 | $.book.name | 书籍1-修改 | 否 | |
| 响应报文转换 | 报文体 | $.pics[1].name | 图片2-修改 | 否 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击操作栏中的“编辑”按钮,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文体 | $.author | $.isbn | 是 | |
| 响应报文转换 | 报文体 | $.pics[1].name | $.pics[0].name | 是 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击操作栏中的“编辑”按钮,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文体 | $.author | $.newAuthor | $.isbn | 是 |
| 响应报文转换 | 报文体 | $.pics[0].name | $.pics[0].newName | $.pics[0].name | 是 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击操作栏中的“编辑”按钮,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文头 | C-Key | C-Key-new | $.isbn | 是 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击操作栏中的“编辑”按钮,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文头 | C-Key | abc | 否 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击操作栏中的“编辑”按钮,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

请求报文xml:
<?xml version="1.0" encoding="UTF-8" ?>
<request>
<id>33</id>
<name>名称1</name>
<isbn>isbn1</isbn>
<author>作者1</author>
<price>45.32</price>
</request>在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击操作栏中的“编辑”按钮,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

请求报文示例
<?xml version="1.0" encoding="UTF-8" ?>
<book>
<id>33</id>
<name>名称1</name>
<isbn>isbn1</isbn>
<author>作者1</author>
<price>45.32</price>
</book>响应报文示例
<?xml version="1.0" encoding="UTF-8" ?>
<book>
<id>33</id>
<name>名称1</name>
<address>地址1</address>
<price>45.32</price>
<detail>
<id>1</id>
<name>书籍1</name>
<chapters>
<name>第一章</name>
<description>第一章描述</description>
</chapters>
</detail>
</book>请求报文转换配置实现【/book/id】字段修改为【/book/new_id】 响应报文转换配置实现【/books/address】的值赋给【/books/price】 响应报文转换配置如下:
| 转换类型 | 字段类型 | 字段名称 | 新字段名称 | 字段赋值 | Value是否是变量 |
|---|---|---|---|---|---|
| 请求报文转换 | 报文体 | /book/id | /book/new_id | /book/id | 是 |
| 响应报文转换 | 报文体 | /books/address | /books/price | 是 |
在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“接口名称”,即可查看到接口的详细信息。


在"开发门户 > API管理 > 我的发布"页面,选择自己的接口,点击“操作”中的“测试”按钮,即可进入测试页面。

在测试页面,在“请求Body”中填写请求报文,点击“测试”按钮,即可查看到转换后的响应报文。

如下图片展示了请求报文转换后的请求报文。

注意
源xml报文转换json格式方式如下:
1.用在线转换工具将xml格式转为json格式,在线转换工具可参考: https://www.bejson.com/xml2json/index.html
2.复制json格式报文并且修改报文中的【-】为【@】