gpt4 book ai didi

node.js - 如何将 base64 图像从客户端传输到服务器或从 s3 存储桶下载二进制/base64?

转载 作者:IT老高 更新时间:2023-10-28 23:27:18 27 4
gpt4 key购买 nike

在我的应用程序中,我将照片直接从客户端发送到 s3,使用类似于以下建议的 heroku 推荐:https://devcenter.heroku.com/articles/s3-upload-node

主要的好处是它节省了服务器成本(我假设因为没有使用诸如 multipart-y 表单数据之类的东西将 block 发送到服务器)。

但是,我希望能够将这些图像也分享到 twitter,这说明了这个要求:

Ensure the POST is a multipart/form-data request. Either upload the raw binary (media parameter) of the file, or its base64-encoded contents (media_data parameter). Use raw binary when possible, because base64 encoding results in larger file sizes

我已尝试将客户端 s3 上传所需的 base64 发送回服务器,但取决于照片大小——我经常收到一个错误,即它太大而无法发回。

TLDR

我是否需要使用多方/多部分表单数据将我的照片发送到我的服务器,以便我可以拥有所需的 base64/二进制文件来将照片分享到 twitter,或者我可以继续将照片从我的客户端发送到 s3?

然后,以某种方式,高效在服务器上获取所需的 base64/二进制文件(可能使用请求模块),然后我可以将图像发送到 twitter?

最佳答案

一个相当简单的方法是使用 S3 events 而无需大量更改您的客户端代码。 . S3 事件可以触发 AWS 中的 lambda 函数,该函数可以将图像发布到 Twitter。您可以使用 lambda 函数中的任何库来高效地发布到 twitter。不确定你是想使用 Lambda 还是坚持使用 Heroku。

关于node.js - 如何将 base64 图像从客户端传输到服务器或从 s3 存储桶下载二进制/base64?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42101160/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com