图片上传:Base64 到服务器 post 请求或 Express Js 中间件
Image Upload : Base64 to server in post request or Express Js Middelware
我需要将本地文件上传到 s3 并将其 link 保存在数据库中。现在我正在将图像转换为 base64 并将其发送到我的 rails 服务器,服务器将其保存在 s3 和 returns 上 url。我在下一个 HTTP 请求中发送此 URL。现在,我如何通过 express get a link 保存它,然后将它用于请求。什么是更好的方法?使用中间件或后端服务器?
对于文件上传,我建议你使用 multer 中间件,因为原生 multipart 实现有点棘手。为了与亚马逊进行交互,使用了 s3 中间件。
要将文件发送到其他地方,您可以使用管道:
fs.createReadStream(rqPath).pipe(res);
在上面的示例中,文件从本地系统读取并通过管道传输到响应。
所有提到的模块都可以在 NPM
找到
如果您仍在尝试解决这个问题,我也在努力解决同样的问题,决定 POST 二进制数据(从 base64 转换而来)直接在正文中而不处理多部分形式,然后迅速启动base64-image-upload 包让这一切变得简单。
我需要将本地文件上传到 s3 并将其 link 保存在数据库中。现在我正在将图像转换为 base64 并将其发送到我的 rails 服务器,服务器将其保存在 s3 和 returns 上 url。我在下一个 HTTP 请求中发送此 URL。现在,我如何通过 express get a link 保存它,然后将它用于请求。什么是更好的方法?使用中间件或后端服务器?
对于文件上传,我建议你使用 multer 中间件,因为原生 multipart 实现有点棘手。为了与亚马逊进行交互,使用了 s3 中间件。
要将文件发送到其他地方,您可以使用管道:
fs.createReadStream(rqPath).pipe(res);
在上面的示例中,文件从本地系统读取并通过管道传输到响应。
所有提到的模块都可以在 NPM
找到如果您仍在尝试解决这个问题,我也在努力解决同样的问题,决定 POST 二进制数据(从 base64 转换而来)直接在正文中而不处理多部分形式,然后迅速启动base64-image-upload 包让这一切变得简单。