将端点添加到无服务器 CLI 生成的函数
Add Endpoint to Serverless CLI Generated Function
我是无服务器 (www.serverless.com) 新手,正在学习 CLI。
我在为函数创建 POST、PUT 或 DELETE 端点时遇到问题。在查看文档时,我使用以下内容创建了一个函数:
sls function create mycomponent/myfunction
效果很好,生成的 s-function.json 自动添加了一个 'GET' 端点。我想要的是能够在某些函数上添加 'PUT'、'POST' 或 'DELETE' 端点。
从文档看来我可以使用端点部署,但我尝试这样做但没有成功:
sls endpoint deploy mycomponent/myfunction@myfunction/create~POST
这个错误表明不存在这样的端点名称(我假设是因为它不在 s-function.json 文件中)。
我是否需要手动编写 s-function.json 文件以包含其他端点,或者是否有办法通过 CLI 执行此操作?
感谢您的帮助!
我刚刚开始更新 s-function.json
文件以设置 "sls" function/endpoint 的方法。
设置特定 statusCode
、requestTemplates
等也是如此。
这是一个 POST function/endpoint s-function.json
配置文件的示例。
{
"name": "create",
"handler": "user/create/handler.handler",
"timeout": 3,
"memorySize": 128,
"custom": {
"excludePatterns": [],
"envVars": []
},
"endpoints": [
{
"path": "user/create",
"method": "POST",
"type": "AWS",
"authorizationType": "none",
"apiKeyRequired": false,
"requestParameters": {},
"requestTemplates": "$${apiRequestTemplate}",
"responses": {
"400": {
"statusCode": "400"
},
"default": {
"statusCode": "201",
"responseParameters": {},
"responseModels": {},
"responseTemplates": {
"application/json": ""
}
}
}
}
]
}
我是无服务器 (www.serverless.com) 新手,正在学习 CLI。
我在为函数创建 POST、PUT 或 DELETE 端点时遇到问题。在查看文档时,我使用以下内容创建了一个函数:
sls function create mycomponent/myfunction
效果很好,生成的 s-function.json 自动添加了一个 'GET' 端点。我想要的是能够在某些函数上添加 'PUT'、'POST' 或 'DELETE' 端点。
从文档看来我可以使用端点部署,但我尝试这样做但没有成功:
sls endpoint deploy mycomponent/myfunction@myfunction/create~POST
这个错误表明不存在这样的端点名称(我假设是因为它不在 s-function.json 文件中)。
我是否需要手动编写 s-function.json 文件以包含其他端点,或者是否有办法通过 CLI 执行此操作?
感谢您的帮助!
我刚刚开始更新 s-function.json
文件以设置 "sls" function/endpoint 的方法。
设置特定 statusCode
、requestTemplates
等也是如此。
这是一个 POST function/endpoint s-function.json
配置文件的示例。
{
"name": "create",
"handler": "user/create/handler.handler",
"timeout": 3,
"memorySize": 128,
"custom": {
"excludePatterns": [],
"envVars": []
},
"endpoints": [
{
"path": "user/create",
"method": "POST",
"type": "AWS",
"authorizationType": "none",
"apiKeyRequired": false,
"requestParameters": {},
"requestTemplates": "$${apiRequestTemplate}",
"responses": {
"400": {
"statusCode": "400"
},
"default": {
"statusCode": "201",
"responseParameters": {},
"responseModels": {},
"responseTemplates": {
"application/json": ""
}
}
}
}
]
}