拓冰建站拓冰建站
首页 / 资讯中心 / 正文

ToolJet 如何使用 S3 Signed URL 从应用内向 S3 桶上传文档?

ToolJet 如何使用 S3 Signed URL 从应用内向 S3 桶上传文档【免费下载链接】ToolJetOpen-source foundation of ToolJet AI - the enterprise app generation platform for internal tools, dashboards, business applications, workflows and AI agents. Build visually, from a prompt, or from Claude Code, Codex and Cursor over MCP 项目地址: https://gitcode.com/GitHub_Trending/to/ToolJet做一个内部应用时常见的需求是用户在浏览器里选中本地文件直接上传到你自己的 S3 桶上传完成后还能拿到一个临时 URL 打开文件做验证。ToolJet 可以在应用内完成这条链路连接一个Amazon S3数据源用Upload Object操作上传文件再用Signed URL for download得到限时访问链接。下面的主路径基于 ToolJet 内置的AWS S3 file explorer模板覆盖从连接数据源到验证上传的全部操作。准备条件确定 S3 凭据连接数据源前先确认你手上有目标桶的凭据。ToolJet 支持三种连接方式详见 Amazon S3 数据源参考认证方式需要填写的字段适用条件IAM Access KeysRegion、Access key、Secret key通过 IAM 用户密钥访问官方建议为 ToolJet 单独新建一个 IAM 用户以便控制访问级别AWS Instance Credentials勾选Use AWS Instance CredentialsToolJet 运行在 EC2 上使用挂载到该实例的 IAM roleECS 容器通过身份提供方登录成功后获得 WebIdentityToken 参数来访问元数据服务AWS ARN RoleRegion、Role ARN指定一个 ARN role 来访问桶用 AWS S3 file explorer 模板创建应用在 ToolJet Dashboard 上点击Create new app按钮右侧的省略号从下拉菜单中选择Choose from template选中AWS S3 file explorer点击Create application from template。模板的 manifest 定义在 server/templates/aws-s3-file-explorer/manifest.json应用创建完成后AWS S3 data source已经自动添加到应用中。接下来进入左侧边栏的Data sources找到这个数据源按上一节选定的认证方式更新凭据即可。列出桶和桶内文件打开 query managerRun模板中的getBuckets查询。它的 Operation 是List buckets该操作不需要任何参数运行后所有桶会加载到应用左侧的桶表中即模板里的 table2 组件。在桶表中选一个桶切换到getObjects查询Data Source选择你的 S3 数据源Operation下拉选择List objects in a bucket。把Bucket参数替换为{{components.table2.selectedRow.Name}}取桶表当前选中行的桶名点击Run该桶中的全部文件就会列在文件表中table3 组件。配置 Upload Object 查询上传文件上传这一步的核心是模板中的uploadObject查询参数按下面的值填写参数填写的值Data Source你的 AWS S3 数据源OperationUpload ObjectBucket{{components.table2.selectedRow.Name}}Key{{components.textinput2.value}}Content Type{{components.filepicker1.file[0].type}}Upload data{{components.filepicker1.file[0].dataURL}}上表中{{...}}形式的内容是 ToolJet 的动态绑定表达式需要原样复制到查询面板的对应字段不要改动组件名。Upload Object 操作的必填参数就是Bucket、Key、Content Type、Upload data四项见 Amazon S3 数据源参考其中 Content Type 与 Upload data 都指向应用里的 filepicker1 文件选择组件即用户在界面上选中的文件。用 Query Success 事件确认上传结果为了让用户在上传成功时得到明确反馈在Events区域创建一个事件点击New event handlerEvent下拉选择Query SuccessAction下拉选择Show AlertMessage填写提示文案文档示例使用的是Image uploaded successfully。运行应用并验证上传回到应用页面选择一个目标桶点击Upload file按钮并选择要上传的文件。可以核对的两个结果上传查询执行成功后弹出上一步配置的 Alert文档示例消息为 “Image uploaded successfully”在文件表Actions列点击Copy signed URLSigned URL 被复制到剪贴板换一个浏览器标签页粘贴该 URL文件可以正常打开。Signed URL 是限时的下载链接模板中Expires in参数默认3600秒1 小时链接过期后无法再访问。可选分支直接签发用于上传的 Signed URL如果目标不是由应用代为上传而是让外部用户在你不提供 AWS 凭据的情况下上传指定对象可以直接使用Signed URL for upload操作必填参数为Bucket、Key、Expires in、Content Type对应的Signed URL for download操作必填参数为Bucket、Key、Expires in。两个操作的参数定义见 Amazon S3 数据源参考。边界与相关操作连接 AWS 之外的 S3 兼容对象存储如 Minio时需要在数据源连接里开启Custom Endpoint开关并填入存储服务的 host URL再点击Test Connection验证操作路径见 Use Custom Endpoint for S3 Hosts。AWS S3 数据源还支持 Create a new bucket、Read object、Remove object、List buckets、List objects in a bucket 等操作完整清单和参数定义见 Amazon S3 数据源参考。【免费下载链接】ToolJetOpen-source foundation of ToolJet AI - the enterprise app generation platform for internal tools, dashboards, business applications, workflows and AI agents. Build visually, from a prompt, or from Claude Code, Codex and Cursor over MCP 项目地址: https://gitcode.com/GitHub_Trending/to/ToolJet创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门