选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

为 API Gateway 中的 WebSocket API 设置数据映射

聚焦模式
为 API Gateway 中的 WebSocket API 设置数据映射 - Amazon API Gateway

数据映射 使您能够将数据从路由请求映射到后端集成。

注意

中不支持 WebSocket API 的数据映射AWS Management Console 必须使用 AWS CLI、AWS CloudFormation 或开发工具包配置数据映射。

将路由请求数据映射至集成请求参数

可以从任何定义的路由请求参数、请求正文、context 或 stage 变量以及静态值映射集成请求参数。

下表显示集成请求数据映射表达式。在此表中,PARAM_NAME 是给定参数类型的路由请求参数的名称。它必须匹配正则表达式 '^[a-zA-Z0-9._$-]+$]'JSONPath_EXPRESSION 是请求正文的 JSON 字段的 JSONPath 表达式。

映射的数据来源 映射表达式
请求查询字符串(仅对于 $connect 路由才支持) route.request.querystring.PARAM_NAME
请求标头(仅对于 $connect 路由才支持) route.request.header.PARAM_NAME
多值请求查询字符串(仅对于 $connect 路由才支持) route.request.multivaluequerystring.PARAM_NAME
多值请求标头(仅对于 $connect 路由才支持) route.request.multivalueheader.PARAM_NAME
请求正文 route.request.body.JSONPath_EXPRESSION
阶段变量 stageVariables.VARIABLE_NAME
上下文变量 context.VARIABLE_NAME,必须为受支持的上下文变量之一。
静态值 'STATIC_VALUE'STATIC_VALUE 为字符串文本值,必须括在单引号内。

示例

以下 AWS CLI 示例配置数据映射。有关示例 AWS CloudFormation 模板,请参阅 websocket-data-mapping.yaml

将客户端的 connectionId 映射到集成请求中的标头

以下 update-integration 命令将客户端的 connectionId 映射到发送给后端集成的请求中的 connectionId 标头。

aws apigatewayv2 update-integration \ --integration-id abc123 \ --api-id a1b2c3d4 \ --request-parameters 'integration.request.header.connectionId'='context.connectionId'

将查询字符串参数映射到集成请求中的标头

以下示例将 authToken 查询字符串参数映射到集成请求中的 authToken 标头。

  1. 使用以下 update-route 命令,将 authToken 查询字符串参数添加到路由的请求参数中。

    aws apigatewayv2 update-route --route-id 0abcdef \ --api-id a1b2c3d4 \ --request-parameters '{"route.request.querystring.authToken": {"Required": false}}'
  2. 使用以下 update-integration 命令,将查询字符串参数映射到发送给后端集成的请求中的 authToken 标头。

    aws apigatewayv2 update-integration \ --integration-id abc123 \ --api-id a1b2c3d4 \ --request-parameters 'integration.request.header.authToken'='route.request.querystring.authToken'
  3. (可选)如有必要,请使用以下 delete-route-request-parameter,从路由的请求参数中删除 authToken 查询字符串参数。

    aws apigatewayv2 delete-route-request-parameter \ --route-id 0abcdef \ --api-id a1b2c3d4 \ --request-parameter-key 'route.request.querystring.authToken'
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。