|
|
пре 1 месец | |
|---|---|---|
| .. | ||
| src | пре 1 месец | |
| publish.yaml | пре 1 месец | |
| readme.md | пре 1 месец | |
| readme_en.md | пре 1 месец | |
快速部署一个 Java 11 的 Event 类型的 OSS trigger 函数到阿里云函数计算。
使用该项目,推荐您拥有以下的产品权限 / 策略:
| 服务/业务 | 函数计算 |
|---|---|
| 权限/策略 | AliyunFCFullAccess |
使用该项目,您需要准备好以下资源:
| 服务/业务 | OSS |
|---|---|
| 资源/创建 | OSS Bucket |
| 资源/上传 | 图片文件 (JPEG, PNG) 上传至 OSS Bucket |
| 服务/业务 | 访问控制(RAM) |
|---|---|
| 资源/创建 | 确保 AliyunFCDefaultRole 存在,该权限内容可以参考这里 |
:fire: 通过 Serverless 应用中心 ,
该应用。
通过 Serverless Devs Cli 进行部署:
s init oss-trigger-fc-event-java11 -d oss-trigger-fc-event-java11cd oss-trigger-fc-event-java11 && s deploy -y代码测试
s cli fc-event oss 生成 OSS Trigger 的 Event 样例参数生成的 Event 样例为,该 Event 为真实 OSS 触发传入 Event 的模拟。
{
"events": [
{
"eventName": "ObjectCreated:PutObject",
"eventSource": "acs:oss",
"eventTime": "2017-04-21T12:46:37.000Z",
"eventVersion": "1.0",
"oss": {
"bucket": {
"arn": "acs:oss:cn-shanghai:123456789:bucketname",
"name": "testbucket",
"ownerIdentity": "123456789",
"virtualBucket": ""
},
"object": {
"deltaSize": 122539,
"eTag": "688A7BF4F233DC9C88A80BF985AB7329",
"key": "image/a.jpg",
"size": 122539
},
"ossSchemaVersion": "1.0",
"ruleId": "9adac8e253828f4f7c0466d941fa3db81161****"
},
"region": "cn-shanghai",
"requestParameters": {
"sourceIPAddress": "140.205.***.***"
},
"responseElements": {
"requestId": "58F9FF2D3DF792092E12044C"
},
"userIdentity": {
"principalId": "123456789"
}
}
]
}
您需要将以上样例中 oss 资源部分进行替换,其中的 regionName,accountId,bucketName 需要根据您创建的 bucket 信息进行替换, 请将 fileName 替换为您之前上传的图片名称。
"oss": {
"bucket": {
"arn": "acs:oss:${regionName}:${accountId}:${bucketName}",
"name": "${bucketName}",
"ownerIdentity": "${accountId}",
"virtualBucket": ""
},
"object": {
"deltaSize": 122539,
"eTag": "688A7BF4F233DC9C88A80BF985AB7329",
"key": "${fileName}",
"size": 122539
},
}
"region": "${regionName}",
使用测试样例进行触发测试,运行 s cli fc invoke --service-name ${serviceNamme} --function-name ${functionName} --event-file event-template/oss-event.json --region ${regionName}
执行成功后您可以查询 OSS bucket,备份图片会被放入 copy 文件夹中。
本应用仅作为学习和参考使用,您可以基于本项目进行二次开发和完善,实现自己的业务逻辑
您如果有关于错误的反馈或者未来的期待,您可以在 Serverless Devs repo Issues 中进行反馈和交流。如果您想要加入我们的讨论组或者了解 FC 组件的最新动态,您可以通过以下渠道进行:
|
|
|
|
|--- | --- | --- |
| 微信公众号:`serverless` | 微信小助手:`xiaojiangwh` | 钉钉交流群:`33947367` |