Je sais que cette question a été posée à plusieurs reprises, mais aucune des solutions proposées de travail pour moi. J'utilise la version Ruby 2.2.1 avec open-uri et essayer d'ajouter une URL à distance pour mes pièces jointes.RUBY - S3 amazon pour les pièces jointes url à distance - openURI :: HTTPError: 403 Interdit
Ce que j'est:
@filename = "#{@doc.id}-#{@company.subdomain}-#{@doc.doc_number}-#{@doc.created_at.strftime("%Y-%m-%d")}.pdf"
@file_path = "https://mybucket.s3.amazonaws.com/docs/doc_#{@doc.id}/#{@doc.filename}"
attachments[@filename] = open(URI.parse("#{@file_path}")).read
J'ai aussi utilisé
1. File.read(open("#{@file_path}")
2. open(Net::HTTP.get(URI.parse("#{@file_path}"))
3. Added User-Agent
j'ai enlevé URI.parse, essayé avec la variable d'instance et sans interpolation de chaîne. Rien ne fonctionne. Si je visite un chemin de fichier sur le navigateur, cela fonctionne mais pas quand je l'appelle dans mon mailer.
Toute aide serait grandement appréciée.
EDIT: Si je viens de coder en dur une adresse de travail (pas d'interpolation de chaîne) en tant que pièce jointe, cela fonctionne correctement.