如何在无lambda的无服务器框架配置(适用于AWS)中实现重定向(301代码)模拟

亚历山大·T

我希望我的API的根路径完全重定向(301)到带有文档的另一个站点。因此,我在例如/function1path处有一个lambda,/应该在另一个位置返回代码301。而且我想没有另一个lambda。

这正是此处描述的内容,但是通过aws命令行工具进行了描述。我尝试了这种方法-效果很好,但是我想通过无服务器框架配置来配置此类API网关模拟。

迈克·帕特里克

幸运的是,您链接到的一系列CLI命令可以在CloudFormation中复制,然后可以将其放入无服务器模板Resources部分中

在此示例中,GETto/function1将调用lambda函数,而GETto/将301返回到众所周知的搜索引擎。

service: sls-301-mock

provider:
  name: aws
  runtime: nodejs12.x
  stage: dev
  region: us-east-1

functions:
  hello:
    handler: handler.hello
    events:
      - http:
          path: function1
          method: get

resources:
  Resources:
    Method:
      Type: AWS::ApiGateway::Method
      Properties:
        HttpMethod: GET
        ResourceId: 
          !GetAtt ApiGatewayRestApi.RootResourceId
        RestApiId: 
          Ref: ApiGatewayRestApi
        AuthorizationType: NONE
        MethodResponses:
          - ResponseModels: {"application/json":"Empty"}
            StatusCode: 301
            ResponseParameters: 
              "method.response.header.Location": true
        Integration:
          Type: MOCK
          RequestTemplates:
            "application/json": "{\n \"statusCode\": 301\n}"         
          IntegrationResponses:
            - StatusCode: 301
              ResponseParameters:
                "method.response.header.Location": "'https://google.com'"

经过测试:

Framework Core: 1.62.0
Plugin: 3.3.0
SDK: 2.3.0
Components Core: 1.1.2
Components CLI: 1.4.0

笔记

ApiGatewayRestApi按照约定,是由Serverless根据http事件创建的API网关阶段资源的逻辑名称

相关CloudFormation文档

ApiGateway :: Method

ApiGateway ::方法集成


编辑

这个答案并不那么冗长,http而是使用一个事件而不是本Resources节。我尚未测试过,但它可能也对您有用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用适用于AWS Lambda的无服务器框架获取最新的Layer版本

来自分类Dev

psycopg2不适用于AWS Lambda上的无服务器框架部署

来自分类Dev

适用于AWS Code Pipleline中无服务器框架的Buildspec.yaml

来自分类Dev

适用于AWS的无服务器框架:将初始数据添加到Dynamodb表中

来自分类Dev

如何在Jest中为无服务器Nodejs Lambda模拟AWS DynamoDB?

来自分类Dev

如何在无服务器框架中配置多个Cognito触发器?

来自分类Dev

无服务器示例不适用于无服务器本地堆栈插件

来自分类Dev

适用于无服务器的AWS CodePipeline:与Gitlab集成

来自分类Dev

lambda 函数如何在无服务器中工作?

来自分类Dev

无服务器-如何在AWS Lambda函数中定期运行Flask命令?

来自分类Dev

如何使用无服务器框架在AWS Aurora无服务器中自动创建表

来自分类Dev

使用无服务器框架时如何从AWS Lambda访问DynamoDB?

来自分类Dev

如何引用使用无服务器框架创建的Arn和AWS lambda函数的名称

来自分类Dev

如何在无服务器框架中将托管策略附加到lambda函数

来自分类Dev

如何在无服务器框架中使用 jquery?

来自分类Dev

如何在无服务器框架中将AWS账户ID作为自定义变量?

来自分类Dev

如何在无头服务器上配置音频

来自分类Dev

如何在无胖框架中创建服务器端验证?

来自分类Dev

带有OpenSSL的自签名证书,适用于家庭服务器,无域名

来自分类Dev

无密码ssh不适用于多台服务器

来自分类Dev

使用无服务器框架模拟响应数据

来自分类Dev

如何使用无服务器框架通过AWS Lambda函数环境变量访问SSM参数存储值?

来自分类Dev

无服务器框架-用于预定义的Cloud Front分布的Lambda @ Edge部署

来自分类Dev

NodeJS如何在Lambda无服务器Websocket中获取请求对象?

来自分类Dev

无服务器框架和多个 AWS 配置文件

来自分类Dev

使用graphql,aws lambda和无服务器框架的多个URL路径选项错误

来自分类Dev

使用无服务器框架(AWS Lambda / Gateway),Express,Mongoose / MongoDB Atlas的应用频繁超时

来自分类Dev

无服务器框架lambda执行角色不匹配?

来自分类Dev

无服务器框架Python lambda直接返回JSON

Related 相关文章

  1. 1

    如何使用适用于AWS Lambda的无服务器框架获取最新的Layer版本

  2. 2

    psycopg2不适用于AWS Lambda上的无服务器框架部署

  3. 3

    适用于AWS Code Pipleline中无服务器框架的Buildspec.yaml

  4. 4

    适用于AWS的无服务器框架:将初始数据添加到Dynamodb表中

  5. 5

    如何在Jest中为无服务器Nodejs Lambda模拟AWS DynamoDB?

  6. 6

    如何在无服务器框架中配置多个Cognito触发器?

  7. 7

    无服务器示例不适用于无服务器本地堆栈插件

  8. 8

    适用于无服务器的AWS CodePipeline:与Gitlab集成

  9. 9

    lambda 函数如何在无服务器中工作?

  10. 10

    无服务器-如何在AWS Lambda函数中定期运行Flask命令?

  11. 11

    如何使用无服务器框架在AWS Aurora无服务器中自动创建表

  12. 12

    使用无服务器框架时如何从AWS Lambda访问DynamoDB?

  13. 13

    如何引用使用无服务器框架创建的Arn和AWS lambda函数的名称

  14. 14

    如何在无服务器框架中将托管策略附加到lambda函数

  15. 15

    如何在无服务器框架中使用 jquery?

  16. 16

    如何在无服务器框架中将AWS账户ID作为自定义变量?

  17. 17

    如何在无头服务器上配置音频

  18. 18

    如何在无胖框架中创建服务器端验证?

  19. 19

    带有OpenSSL的自签名证书,适用于家庭服务器,无域名

  20. 20

    无密码ssh不适用于多台服务器

  21. 21

    使用无服务器框架模拟响应数据

  22. 22

    如何使用无服务器框架通过AWS Lambda函数环境变量访问SSM参数存储值?

  23. 23

    无服务器框架-用于预定义的Cloud Front分布的Lambda @ Edge部署

  24. 24

    NodeJS如何在Lambda无服务器Websocket中获取请求对象?

  25. 25

    无服务器框架和多个 AWS 配置文件

  26. 26

    使用graphql,aws lambda和无服务器框架的多个URL路径选项错误

  27. 27

    使用无服务器框架(AWS Lambda / Gateway),Express,Mongoose / MongoDB Atlas的应用频繁超时

  28. 28

    无服务器框架lambda执行角色不匹配?

  29. 29

    无服务器框架Python lambda直接返回JSON

热门标签

归档