更新时间:2025-12-23 GMT+08:00

创建Exchange

功能介绍

创建Exchange。

URI

PUT /v2/rabbitmq/{project_id}/instances/{instance_id}/vhosts/{vhost}/exchanges

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方式请参见获取项目ID

instance_id

String

实例ID

vhost

String

vhost名称,名称中包含/时,需要将/替换为__F_SLASH__,否则会调用失败。例如:Vhost名称为/test,入参值为__F_SLASH__test。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

name

String

Exchange名称

type

String

参数解释

Exchange类型。

约束限制

不涉及。

取值范围

  • direct:该类型Exchange会将消息路由到Routing Key完全匹配的Queue中。

  • fanout:该类型Exchange会将消息路由到所有与其绑定的Queue中。

  • topic:该类型Exchange将Routing Key进行通配符匹配,然后将消息路由到匹配成功的Queue中。

  • headers:该类型Exchange与Routing Key无关,而与消息中的Headers属性信息相关。Exchange根据消息中的Headers属性键值对和绑定的属性键值对进行匹配,根据匹配情况路由消息。

默认取值

不涉及。

durable

Boolean

是否持久化。

auto_delete

Boolean

是否自动删除

internal

Boolean

内部Exchange。

arguments

Object

参数列表

响应参数

状态码:200

表3 响应Body参数

参数

参数类型

描述

durable

Boolean

是否持久化

default

Boolean

是否是默认Exchange

internal

Boolean

是否是内部Exchange

arguments

Object

参数列表

name

String

Exchange名称

auto_delete

Boolean

是否自动删除

type

String

参数解释

Exchange类型。

取值范围

  • direct:该类型Exchange会将消息路由到Routing Key完全匹配的Queue中。

  • fanout:该类型Exchange会将消息路由到所有与其绑定的Queue中。

  • topic:该类型Exchange将Routing Key进行通配符匹配,然后将消息路由到匹配成功的Queue中。

  • headers:该类型Exchange与Routing Key无关,而与消息中的Headers属性信息相关。Exchange根据消息中的Headers属性键值对和绑定的属性键值对进行匹配,根据匹配情况路由消息。

vhost

String

所属Vhost

请求示例

创建Exchange

POST /v2/rabbitmq/{project_id}/instances/{instance_id}/vhosts/{vhost}/exchanges

{
  "name" : "exchange_name_demo",
  "type" : "direct",
  "durable" : true,
  "auto_delete" : false,
  "internal" : false
}

响应示例

状态码:200

创建Exchange成功

{
  "name" : "exchange_name_demo",
  "type" : "direct",
  "durable" : true,
  "auto_delete" : false,
  "internal" : false,
  "vhost" : "default",
  "arguments" : { }
}

状态码

状态码

描述

200

创建Exchange成功

错误码

请参见错误码