如何解决如何将 websocket api 网关 ID 公开为云形成输出变量
service: ${file(config/${self:provider.stage}.json):service.name}-ws
custom:
logRetentionInDays: ${file(config/${self:provider.stage}.json):log.retentionDays}
service:
awsAccId: ${file(config/${self:provider.stage}.json):aws.accountId}
queue: ${file(config/${self:provider.stage}.json):service.serviceQueue}
topic: ${file(config/${self:provider.stage}.json):service.servicetopic}
eventSource: ${file(config/${self:provider.stage}.json):service.allowedEventSources}
eventType: ${file(config/${self:provider.stage}.json):service.allowedEventTypes}
certId: ${file(config/${self:provider.stage}.json):aws.certId}
socketCertId: ${file(config/${self:provider.stage}.json):aws.socketCertId}
customDomain:
websocket:
domainName: ${file(config/${self:provider.stage}.json):aws.socketDomainName}
stage: ${opt:stage}
hostedZoneId: ${file(config/${self:provider.stage}.json):aws.hostedZoneId}
createRoute53Record: true
endpointType: 'regional'
securityPolicy: tls_1_2
certificateArn: 'arn:aws:acm:us-west-2:${self:custom.service.awsAccId}:certificate/${self:custom.service.socketCertId}'
enabled: true
# documentation: ${file(documentation.yml)}
webpack:
webpackConfig: ./webpack.config.js
packager: "yarn"
packagerOptions:
scripts:
- yarn autoclean --init
- yarn autoclean --force
includeModules:
forceExclude:
- aws-sdk
forceInclude:
- config
# Add the serverless-webpack plugin
plugins:
- serverless-webpack
- serverless-offline
# - serverless-domain-manager
- serverless-plugin-tracing
# - serverless-aws-documentation
- serverless-plugin-log-retention
package:
excludeDevDependencies: true
individually: true
provider:
name: aws
runtime: nodejs12.x
timeout: 900
stage: ${opt:stage}
endpointType: EDGE
region: ${file(config/${self:provider.stage}.json):aws.region}
tracing: true
environment:
STAGE: ${opt:stage}
AWS_NODEJS_CONNECTION_REUSE_ENABLED: 1
NODE_ENV: ${opt:stage}
apiGateway:
minimumCompressionSize: 1024 # Enable gzip compression for responses > 1 KB
tracing: true
websocketsApiName: draas-agents-api
websocketsApiRouteSelectionExpression: $request.body.action # custom routes are selected by the value of the action property in the body
functions:
connect-handler:
handler: src/api/websocket.webSocketConnect
events:
- websocket:
route: $connect
disconnect-handler:
handler: src/api/websocket.webSocketdisconnect
events:
- websocket:
route: $disconnect
message-handler:
handler: src/api/websocket.messageHandler
events:
- websocket:
route: $default
这是我的无服务器文件。 部署此文件后,我可以看到在资源中创建了 WebsocketsApi。
我想将 WebSocket API 网关 Id 导出为云形成中的输出变量。 就像我们为 RestApis 所做的一样 [ApiGatewayRestApi] 我想使用该 ID 为其创建一个授权方,该授权方位于不同的服务中。
请帮忙!!!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。