ruby—将文件从rails api发送到另一个rails api,并附加到电子邮件

ie3xauqp  于 2021-09-29  发布在  Java
关注(0)|答案(0)|浏览(122)

我想知道最好的方法是什么。
我有一个启用了activestorage的rails api,将pdf文件发送到s3存储桶。我有另一个rails api,它是一个电子邮件微服务。
我想从我的主rails api向我的电子邮件微服务发送请求,请求中包含文件附件,然后将其附加到我的电子邮件中。
我在下面遇到的解决方案似乎可以做到这一点,但前提是邮件程序发生在同一api上:-

class Product < ApplicationRecord
  has_one_attached :photo
end

class PhotoMailer < ApplicationMailer
  default from: "default@example.com"

  def new_photo_email
    photo = params[:product].photo
    attachments[photo.filename.to_s] = photo.download
    mail(to: "one@example.com", subject: "Nueva photo")
  end
end

class PhotoMailerPreview < ActionMailer::Preview
  def new_photo_email
    PhotoMailer.with(product: Product.first).new_photo_email
  end
end

i、 它使用了activestorage的 download 方法。
当我将文件发送到另一个api时,这不起作用。实现这一目标的最佳方式是什么?我是否可以只发送文件url,然后使用 File.read(url) 在我的电子邮件服务中?或者有没有一种方法可以通过http请求发送文件,让我的电子邮件服务能够抓取?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题