Ich speichere PDF-Dokumente in einem Dropbox-Repo als Teil einer Ruby on Rails-App und möchte dem Benutzer Links anbieten, um die PDFs in seinem Browser anzuzeigen. Ich benutze das paperclip-dropbox Juwel (Ich sehe, dass es jetzt veraltet ist, aber ich verwende es für die Kompatibilität mit einer anderen App-Funktion, und es macht 90% von dem, was ich brauche). Mein Problem besteht darin, die Dokumente im Browser zu rendern, anstatt sie einfach herunterzuladen, so dass der Benutzer gezwungen ist, außerhalb der Web-App zu arbeiten.Dropbox-Benutzerinhalt und Paperclip-Schmuckstück - Dropbox-Inhalt im Browser anzeigen?
Hier ist mein Modell:
class TipSheet < ActiveRecord::Base
has_attached_file :document,
:storage => :dropbox,
:dropbox_credentials => Rails.root.join("config/dropbox.yml"),
:path => "tip_sheets/:filename"
validates_attachment :document, content_type: { content_type: "application/pdf" }
end
In einer Ansicht, ich Zugriff auf das Dokument-URL wie folgt:
@tip_sheet.document.url
Hier ist ein Beispiel Dokument URL:
https://dl.dropboxusercontent.com/1/view/{repo-code}/Apps/Iowa-Playbook/tip_sheets/Absence_9_19_%285%29.pdf
Diese URL führt zu einem Download, im Gegensatz zum Rendern im Browser. This page behauptet, dass das "dl" am Anfang im Browser rendern sollte. Antworten auf this question sagen, Sie sollten "nur lassen Sie Ihren Browser die PDF-Rendering. Der einzige Browser, der eine neue Registerkarte für die PDF öffnet, ist Safari auf einem mobilen Gerät. Hat jemand in der Lage, ein ähnliches Problem zu lösen?
Danke für die Antwort Michael. Das von mir verwendete Juwel stellt den Link dl.dropboxusercontent.com/... als Dateiattribut zur Verfügung. Ich habe versucht, hinzuzufügen? Dl = 0 und? Roh = 1 ohne Glück. Es sieht so aus, als ob die von Ihnen angegebene URL erfordert, dass sich der Benutzer bei Dropbox anmeldet. Die Nutzer meiner App verfügen nicht unbedingt über Anmeldedaten. Gibt es eine Möglichkeit, dies einem nicht authentifizierten Benutzer zur Verfügung zu stellen? – zamud
Ich denke, Sie müssen die Dateien in Dropbox veröffentlichen. – Michael
https://www.dropbox.com/en/help/20 – Michael