使用 CloudFormation 添加对 AWS websocket API 的集成响应

2023-12-22

AWS recently released Cloudformation support for templating websocket API gateways https://aws.amazon.com/about-aws/whats-new/2019/02/automate-websocket-api-creation-in-api-gateway-with-cloudformation/. I have a working example deployed, but I can't work out how to turn on the proxy integration response (see screenshot for how this is done in the console). Does anyone know what cloudFormation setting can be used to turn on a default integration response for lambda proxy integrations? enter image description here


请尝试以下步骤

1- 在 Route 中添加 RouteResponseSelectionExpression 作为 $default(目前仅支持一种)

2-为所有路由创建RouteResponse(双向) 注意:- RouteResponseKey: $default // 只能是默认值

3-添加ConnectIntegResponse(可选)

以下是经过测试的 CFN 片段,请随意使用

##########Socket API###############
  webSocket:
    Type: AWS::ApiGatewayV2::Api
    Properties:
      Name: WebSocket
      ProtocolType: WEBSOCKET
      RouteSelectionExpression: "$request.body.action"
  ConnectRoute:
    Type: AWS::ApiGatewayV2::Route
    Properties:
      ApiId: !Ref webSocket
      RouteKey: $connect
      AuthorizationType: NONE
      OperationName: ConnectRoute
      RouteResponseSelectionExpression: $default # add this 
      Target: !Join
        - '/'
        - - 'integrations'
          - !Ref ConnectInteg
  ConnectInteg:
    Type: AWS::ApiGatewayV2::Integration
    Properties:
      ApiId: !Ref webSocket
      Description: Connect Integration
      IntegrationType: AWS_PROXY
      IntegrationUri: 
        Fn::Sub:
            arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${restAndSocketLambda.Arn}/invocations

  ConnectRouteResponse: # Add this
    Type: 'AWS::ApiGatewayV2::RouteResponse'
    Properties:
      RouteId: !Ref ConnectRoute
      ApiId: !Ref webSocket
      RouteResponseKey: $default

  ConnectIntegResponse: # Add this(if required)
    Type: 'AWS::ApiGatewayV2::IntegrationResponse'
    Properties:
      IntegrationId: !Ref ConnectInteg
      IntegrationResponseKey: /201/
      ApiId: !Ref webSocket
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 CloudFormation 添加对 AWS websocket API 的集成响应 的相关文章

随机推荐

  • 如何在 x86/x64 中创建跳转表?

    我目前正在学习 x86 x64 asm 我想尝试制作一个跳转表 但我不知道我做错了什么 这个概念本身对我来说并不新鲜 我只是不明白为什么它不起作用 当我研究这个问题时 我几次看到 的用法 但我不确定这是否是正确的方法 data var qw
  • 谷歌地图:检查折线是否穿过圆

    我想问一下如何检查某条折线是否穿过圆 在下图中 红色折线穿过绿色圆圈内部 我知道可以确定标记是否在圆内 但我不知道该怎么做 也不知道它对于折线是否可行 我还有 8 点声誉 所以无法发布图片 图片链接如下 https i stack imgu
  • Android 中透明背景的对话框

    如何从 Android 对话框中删除黑色背景 图片显示了问题所在 final Dialog dialog new Dialog Screen1 this dialog requestWindowFeature Window FEATURE
  • Java-泽西岛、JAX RS

    我有一些开发 Java 程序的经验 然而 我一直很难理解一些基础知识 例如构成 Java 企业应用程序的所有不同组件 例如 我已经实现了从 J2ME 应用程序使用的基于 RESTful 和 SOAP 的 Web 服务 并为我的 MSC 执行
  • 从 Java 访问元组的奇怪行为

    我正在寻找关于我在 Java 访问在 Scala 中创建的元组中发现的非常奇怪的行为的解释和 或版本控制详细信息 如果可能 我将通过我所做的简单测试来展示奇怪的行为 我创建了这个 Scala 类 class Foo def intsNull
  • 在 SQLAlchemy 中插入时处理重复的主键(声明式风格)

    我的应用程序使用范围会话和 SQLALchemy 的声明式风格 这是一个网络应用程序 许多数据库插入都是由Celery 任务调度程序 通常 当决定插入对象时 我的代码可能会执行以下操作 from schema import Session
  • NSTask 启动路径不可访问。在 Xcode 中工作。 XCode 显示错误

    好的 关于堆栈溢出有几个与此相关的问题 这是唯一的问题 https stackoverflow com questions 8254680 nstask only returning standarderror in release bui
  • 谷歌数据流防火墙规则/网络标记

    我正在尝试从谷歌数据流批处理连接到cassandra 具有防火墙规则标签 此外数据流服务将创建带有 数据流 标记的工作人员 是否可以更改默认标签 或者添加更多标签 我认为目前无法更改数据流服务创建虚拟机所用的标签 但是 可以通过指定参数来控
  • 访问子表单数据表仅返回 1 个结果

    我知道这个问题已经以某种形式或方式被多次提出 但我无法找到有效的解决方案 这让我发疯 我正在 Access 中创建一个搜索表单 该表单通过 VBA 执行选择查询来查找表中的数据 到目前为止 这非常简单 查询有效 并且表单返回结果 问题是我正
  • Jenkins 管道可以有可选的输入步骤吗?

    是否可以创建带有可选输入阶段的 Jenkins 管道 下面的代码片段没有实现这个目标 预期行为 该阶段 以及输入提示 应该仅针对特定分支运行 实际行为 此阶段适用于所有分支机构 使用输入步骤时 when 过滤器将被忽略 stage Appr
  • 如何在OPenCV中计算32位浮点图像的图像直方图

    我想计算图像像素类型为 32F 32 位浮点 的直方图 calcHist 函数的参数值应该是什么 变暗 垃圾箱 范围 嗯 我已经这样做过很多次了 像这样 cv Mat matSrc this is a CV 32FC1 normalised
  • TFS项目可以互相引用吗?

    我最近开始在一个企业软件环境中工作 其中有数百个不同的应用程序 所有这些应用程序都局限于自己的 孤岛 我的任务之一是尝试将事情标准化一点 第一个尝试将是标准事件日志记录 目前 该公司的 标准 是 每个人都应该使用企业库进行日志记录 这实际上
  • z-index 在 ipad 上不能很好地工作

    我正在为朋友建立一个网站 http pasionesargentas com sm http pasionesargentas com sm 与带缩略图翻转的全屏图库 http tympanus net codrops 2011 02 09
  • css div高度100%问题?

    我想要一个 div 占据所有屏幕高度 这就是为什么我找到以下链接 http www webmasterworld com forum83 200 htm http www webmasterworld com forum83 200 htm
  • 重用PreparedStatement中的参数?

    我将一个参数传递给一个PreparedStatement 如下所示 public void getNodes String runId File file Connection conn PreparedStatement ps null
  • 我可以在 QNX 上使用 Java 吗?

    我必须侍奉两个主人 一个项目预计在 v1 0 后将一分为二 它最初是一个使用 FreeRTOS 用 C 语言编码的简单嵌入式项目 直到 v1 0 为止 后来 一位大师说我们必须使用QNX来取悦合作伙伴 否则就会失去交易 而另一位大师则说我们
  • 在 rmarkdown 中创建模板

    我正在尝试创建自定义模板 但它不会显示 我已经尝试跟随https bookdown org yihui rmarkdown template struct html https bookdown org yihui rmarkdown te
  • Power Query 为空时上移值

    目前 我在 Excel 中有一个大表 我想将其与动态下拉列表 级联选项 一起使用 根据您在第一个下拉菜单中所做的选择 然后在下一个单元格中 您应该有一个经过筛选的下拉菜单 此外 任何选项对于所选的主类别都是唯一的 我做的第一件事是获取我需要
  • fsock:无法找到套接字传输“http”

    我想用 fsock 发送后变量 但是当我尝试这个时 post arr array a gt b addr http 1 2 3 4 confirmation html fp fsockopen addr 80 errno errstr 30
  • 使用 CloudFormation 添加对 AWS websocket API 的集成响应

    AWS recently released Cloudformation support for templating websocket API gateways https aws amazon com about aws whats