gpt4 book ai didi

aws-lambda - 如何在 CloudFormation 模板中定义 Serverless Api 函数的模型

转载 作者:行者123 更新时间:2023-12-03 07:24:32 26 4
gpt4 key购买 nike

请参阅下面我的模板的相关部分。我不知道如何为 Api 设置模型。如果我将模型部分从 MyApi 中删除,“sam deploy”会说:“相关 API 未定义任何模型”。那么如何添加 Api 模型和函数请求模型呢?

次要问题:

模型可以在外部 json/yaml 文件中定义吗?

如何定义响应模型?

我可以在单独的模板文件中引入模型吗?

谢谢。

Resources:
MyApi:
Type: AWS::Serverless::Api
Properties:
StageName: test
Models:
???

PostNewItem:
Type: AWS::ApiGateway::Model
Properties:
RestApiId: !Ref MyApi
Name: PostNewItem
ContentType: application/json
Schema:
$schema: 'http://json-schema.org/draft-04/schema#'
title: NewItemModel
type: object
properties:
name:
type: string
description:
type: string
....

MyFunction:
Type: AWS::Serverless::Function
Properties:
...
Events:
AddItem:
Type: Api
Properties:
Path: /item
Method: post
RestApiId:
!Ref MyApi
RequestModel:
Model: !Ref PostNewItem
Required: true

最佳答案

为了回答我自己的问题,使用无服务器,不需要 AWS::ApiGateway::Models,而是使用 Api 定义它们。

 MyApi:
Type: AWS::Serverless::Api
Properties:
StageName: test
Models:
PostPointModel:
type: object
required:
- name
properties:
name:
type: string
description:
type: string

关于aws-lambda - 如何在 CloudFormation 模板中定义 Serverless Api 函数的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60410246/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com