首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何为纯API应用程序创建视频预览

如何为纯API应用程序创建视频预览
EN

Stack Overflow用户
提问于 2019-06-06 06:31:40
回答 1查看 550关注 0票数 0

我有一个应用程序接口唯一的应用程序,用'fast_jsonapi‘GEM呈现JSON响应。

我设法使用ActiveStorage上传了视频,并且我可以在JSON响应中发送视频URL。但我需要在相同的响应上发送一个缩略图URL。

我查看了Rails文档和Google,发现有一些方法可以在Rails应用程序上实现

代码语言:javascript
复制
<ul>
  <% @message.files.each do |file| %>
    <li>
      <%= image_tag file.preview(resize_to_limit: [100, 100]) %>
    </li>
  <% end %>
</ul>

但我无法找到如何将其包含到仅限API的应用程序中,并在JSON响应上发送缩略图URL。

现在,这是我的序列化程序,我正在尝试一个在博客上找到的解决方案,但到目前为止它还不起作用。我不确定这是不是正确的方法,也不知道如何解决这个问题。

代码语言:javascript
复制
class EjercicioSerializer
  include FastJsonapi::ObjectSerializer
  #include ActionView::AssetPaths
  include ActionView::Helpers::AssetTagHelper

  set_id :id
  attributes :nombre, :descripcion

  attribute :video_url do |object|
    Rails.application.routes.url_helpers.rails_blob_path(object.video, only_path: true) if object.video.attachment
  end

  attribute :video_thumbnail do |object|

    link_to(image_tag(object.video.preview(resize: "200x200>")),  
      Rails.application.routes.url_helpers.rails_blob_path(object.video, disposition: "attachment"))  

  end

end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-06 07:51:52

如果有人感兴趣,我会设法找到解决方案

代码语言:javascript
复制
attribute :video_thumbnail do |object|
    Rails.application.routes.url_helpers.rails_representation_url(object.video.preview(resize: "200x200").processed, only_path: true)

end

在服务器端需要安装FFmpeg和ImageMagick。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56468880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档