开源项目 authorization-lambda-at-edge
使用教程
1. 项目的目录结构及介绍
authorization-lambda-at-edge/
├── README.md
├── cloudformation
│ └── template.yaml
├── lambda
│ ├── authorizer
│ │ ├── index.js
│ │ └── package.json
│ └── viewer-request
│ ├── index.js
│ └── package.json
└── scripts
└── deploy.sh
README.md
: 项目说明文档。cloudformation/template.yaml
: CloudFormation 模板文件,用于部署 AWS 资源。lambda/authorizer/index.js
: Lambda 函数代码,用于授权处理。lambda/authorizer/package.json
: Lambda 函数依赖包配置文件。lambda/viewer-request/index.js
: Lambda 函数代码,用于处理 viewer request。lambda/viewer-request/package.json
: Lambda 函数依赖包配置文件。scripts/deploy.sh
: 部署脚本。
2. 项目的启动文件介绍
lambda/authorizer/index.js
该文件是 Lambda 函数的入口文件,主要负责处理授权逻辑。代码示例如下:
exports.handler = async (event) => {
// 授权逻辑处理
};
lambda/viewer-request/index.js
该文件是 Lambda 函数的入口文件,主要负责处理 viewer request。代码示例如下:
exports.handler = async (event) => {
// viewer request 处理逻辑
};
3. 项目的配置文件介绍
cloudformation/template.yaml
该文件是 CloudFormation 模板文件,用于定义 AWS 资源的配置。示例如下:
AWSTemplateFormatVersion: '2010-09-09'
Resources:
LambdaFunction:
Type: 'AWS::Lambda::Function'
Properties:
Handler: 'index.handler'
Role: !GetAtt LambdaExecutionRole.Arn
Code:
S3Bucket: 'my-bucket'
S3Key: 'my-key'
Runtime: 'nodejs14.x'
lambda/authorizer/package.json
该文件是 Lambda 函数的依赖包配置文件,定义了所需的 npm 包。示例如下:
{
"name": "authorizer",
"version": "1.0.0",
"dependencies": {
"jsonwebtoken": "^8.5.1"
}
}
lambda/viewer-request/package.json
该文件是 Lambda 函数的依赖包配置文件,定义了所需的 npm 包。示例如下:
{
"name": "viewer-request",
"version": "1.0.0",
"dependencies": {
"aws-sdk": "^2.814.0"
}
}
以上是 authorization-lambda-at-edge
项目的目录结构、启动文件和配置文件的介绍。希望这份教程能帮助你更好地理解和使用该项目。