问题标签 [shrine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
535 浏览

ruby-on-rails - 通过 Shrine 从 aws S3 下载时如何解密文件(使用 aws KMS 加密)?

我在 Rails 应用程序中使用 Shrine 将文件上传到 Amazon S3。一些与 GDPR 合规性相关的用户文件,我需要实施客户端加密([Shrine 文档](https://github.com/shrinerb/shrine/blob/v2.16.0/doc/storage/s3.md#加密))。在 Shrine 文档中,您可以看到通过 AWS KMS 进行文件加密的信息,但没有关于解密的信息。

当我从 aws s3 下载文件时,如何解密文件?

这是我的代码:

config/initializers/shrine.rb - 在这个地方我为 Shrine 指定配置。

模型/document.rb - 模型

controllers/downloads_controller.rb - 在这个地方我正在下载文件并需要解密它。

0 投票
1 回答
448 浏览

vips - 使用 Shrine 生成 PDF 预览

我正在将我们的后端文件上传转换为与 Shrine 一起使用。我设法让图像上传和缩略图很容易地启动和运行,但我一直在努力对 PDF 文件做同样的事情。

上传本身有效,但是,我无法为文件生成缩略图/预览。我将 Shrine 与 ImageProcessing 和 vipslib 一起使用。

我尝试使用 vips 提供的缩略图方法,但这似乎只适用于图像文件,我也尝试遵循这个SO,但没有成功。

现在让我给你一些背景:

这是 Shrine 初始化程序

这是上传者

如前所述,上传者目前会中断并且不会生成预览。该文件的先前版本如下所示:

我在网上看到的关于这个主题的文档很少。

更新:回答问题

该命令vips pdfload吐出使用信息,它确实表示将使用 libpoppler 加载 PDF。

我直接从他们的下载页面安装了 tar 文件,版本是 8.7.0,在 Debian 系统上运行。

感谢有关许可证信息 - 也会对此进行调查!

0 投票
1 回答
1014 浏览

amazon-s3 - 使用 Shrine 上传视频文件并生成缩略图

我想使用 Shrine gem 上传视频文件、转码并从视频中生成缩略图。

我正在尝试将 Erik Dahlstrand 的Shrine-Rails-example从照片转换为视频。我在创建视频上传器时遇到问题。我将此代码基于Video is not of allowed type (allowed types: video/mp4), Shrine, Rails

我收到此错误:

事实上,该位置没有文件。那么等待上传时文件存储在哪里?

此外,使用演示将照片上传到 AWS(生产环境),对象存储在存储桶中名为“照片”的文件夹中。Shrine 显然使用表名来命名文件夹。是否可以创建替代和嵌套文件夹名称?

谢谢 - 似乎是一个了不起的宝石!试图更好地理解它!

谢谢

0 投票
0 回答
2933 浏览

ruby-on-rails - 如何使用 Shrine 将服务器磁盘上的文件上传到 S3 并公开?

我想将位于磁盘上的文件上传到 S3 并公开。

上传作品,但文件不公开。obj.file_url返回:

我希望它obj.file_url会返回纯 URL-s(没有签名等 ..):

0 投票
0 回答
249 浏览

ruby-on-rails - 制作神社宝石来重新处理附件?

我有一个上传器,有一些生成的版本

我有一些“损坏”的记录,该文件处于未升级状态。发生这种情况是因为后台作业在提升过程中引发错误。因此,这些记录停留在“缓存”状态。

如何强制他们重新生成版本?我尝试过以下文档:

这没用。这根本不会触发处理逻辑。如何通过生成所有版本强制运行存储过程?

0 投票
2 回答
538 浏览

ruby-on-rails - 从 NativeScript 上传到 Rails Shrine

我正在使用带有 Shrine gem 的 Rails 5.2 来上传图片。在客户端,我使用 NativeScript 6.0 和 Angular 8.0。

我已经安装了 Shrine,它在 Rails 端工作并通过 Uppy 直接上传。

在使用 NativeScript 的前端(Android 手机)上,我可以拍摄照片(使用 nativescript-camera)并使用 nativescript-background-http 将其发送到 nativescript-background-http 演示服务器(基于节点)。

我遇到的问题是从 NativeScript 发送到 Shrine。

在后端我有这些路线

在我的神社设置中,我有

在前端

处理程序看起来像这样

当我拍照时,它会尝试将其发送到后端,并在服务器上获得以下日志;

我认为问题出在我发送到 Shrine 的标题中,将图像从 NativeScript 发送到 Shine 的正确方法是什么?

更新:尝试 multipartUpload

我尝试了 multipartUpload 并且还得到了 400 错误代码

**更新:尝试 nativescript-background-http 演示服务器

这行得通,我可以成功地将 multipartUpload 发送到演示服务器

更新:记录请求的中间件

开始整理一个中间件机架类来打印响应

当我发送文件时,它会发送响应

从 NativeScript 发送时查看 byebug 中的标题、状态和正文;

在 Rails 端通过 Uppy 成功发送会显示此结果

来自 Chrome 网络的关于通过 Uppy 成功上传的信息

更新:可以使用 blob 通过 Angular 上传

我可以使用 blob 从 Angular 8.0 上传到 Shrine。

更新:尝试 nativescript-http-formdata

这是我通过nativescript-http-formdata发送图片的实现;

错误:查看此错误后,我认为 okhttp3 已加载,但 NativeScript 6.0 的语法错误

更新:通过 Curl 上传到 Shrine = 作品

尝试以下并得到相同的错误请求 400 错误;

发送图片

发送文本表单(可选)

将输出转换为 JSON

结果

带有图像数据的 POST 文本

电流通过

我认为我目前最好的机会是使用 nativescript-background-http 以正确的格式将多部分帖子发送到神社。那是什么。

0 投票
1 回答
154 浏览

ruby - 使用 image_processing 将 --density 标志添加到 libvips 命令?

我正在尝试将--density标志添加到 libvips 命令中,以便 PDF(或其他矢量图像)以可接受的分辨率转换为 JPG。

上下文——在升级到最新版本的 image_processing 之前,我使用的是 MiniMagick 和旧版本,并且能够使用以下代码添加任意标志:

0 投票
3 回答
507 浏览

ruby-on-rails - 无法上传 xls 文件,但可以通过 Shrine Uploader 上传 xlsx 文件

我想通过 Shrine 上传器 gem 上传一个 xls 文件(Libreoffice),但是我收到一个回滚错误,比如文件类型必须是一个 ..(在我的初始化程序/shrine.rb 中有 mime 类型).. 这是我的神社.rb

这是我的神社_uploader.rb

我可以上传 xlsx 文件,但是即使 mime 类型是 application/vnd.ms-excel,我也无法弄清楚为什么我无法上传 xls 文件。

谢谢你的帮助。

0 投票
1 回答
122 浏览

ruby-on-rails - 配置在 Shrine gem 上生成文件 ID 属性的方式

ShrineID在调用presign_endpoint. 有没有办法改变ID使用 Shrine 的配置生成的方式?

0 投票
1 回答
112 浏览

ruby-on-rails - Shrine Storage S3 是否支持 IAM 配置文件选项?

他有一个选项可以作为参数发送,Shrine::Storage::S3.new将 IAM 配置文件的使用设置为true,就像 Carrierwave 一样?

例如: