Remove Dropbox Onebox For Audio Links

AI-generated summary

The discussion revolves around the issue of Dropbox links not playing audio files within Discourse due to Dropbox’s policy of not allowing off-site streaming.

JamesNorth initially asked how to remove the onebox formatting for Dropbox audio links. Falco suggested adding ?dl=1 to the link, which may work in some cases. However, craigconstantine reported that this solution no longer works in Safari.

Falco recommended uploading files directly to Discourse or using alternative media hosting services. steveh suggested that editing the Dropbox share link to end with ?raw=1 might work, but craigconstantine reported that this solution also no longer works in Safari.

JQ331 summarized the issue and suggested that turning off oneboxing for Dropbox audio links would be the best solution, as users may not understand the technical issues.

Codinghorror suggested adding dropbox.com to the “blocked onebox domains” in the site settings, which JQ331 tested and found to be partially effective, blocking oneboxing for audio files but not for images. Simon_Manning suggested that the issue may be due to the different domains used for audio and image files.

Hi All,

The Dropbox Onebox works great generally - the pretty box with the folder/file name etc .. but with some individual files (like mp3 etc) it attempts to ‘play’ the file with the inbuilt audio player.

https://www.dropbox.com/s/5n413v2420pgslc/James%20and%20Ric%202017.mp3?dl=0

Becomes

Now, Dropbox kind of doesn’t allow that kind of off-site streaming thing - it prefers you to land on their page and play it with their audio player.

  • Is there a way to remove the onebox formatting on a link?
  • Or, can the media player not attempt to play files from the Dropbox (and probably other cloud formats?) domain(s)
「いいね!」 5

https://www.dropbox.com/s/5n413v2420pgslc/James%20and%20Ric%202017.mp3?dl=1

dl=1 works.

It’s a very strange quirky at Dropbox side, they should use the imgur convention (with file externsion is hotlinking and without a html page).

「いいね!」 8

Odd - good tip for now … I’ll try to edit posts to dl=1.

I guess they are all going to have different conventions.

「いいね!」 3

古いスレッドを掘り起こすのは承知の上なんですが…ビッグサーの最新環境では、このDropboxのURLがSafariで再生されなくなっています。*ため息*……

「いいね!」 1

もしかしてファイルが削除されたからでしょうか?Dropbox に新しいファイルが入っているので、テストできます:

「いいね!」 5

@Falco 返信にある音声ファイルをクリックして再生すると、読み込みスピナーが回転したまま止まりません。

アドレスをコピーすると…

以下のようになります。

https://www.dropbox.com/s/yerjh0ddm6rjs21/Wakka%20Wakka.mp3?dl=1
「いいね!」 1

デスクトップとスマホの両方で問題なく動作していますが、複数のリダイレクトによって簡単に破損する可能性があることは理解できます。そのファイルは直接 Discourse にアップロードすることをお勧めします。

「いいね!」 2

おっ、なるほど…

HTTP/2 301 cache-control: no-cache,no-cache, no-store content-security-policy: sandbox content-type: text/html; charset=utf-8 date: Tue, 02 Mar 2021 16:17:05 GMT location: /s/dl/yerjh0ddm6rjs21/Wakka%20Wakka.mp3 pragma: no-cache referrer-policy: strict-origin-when-cross-origin server: envoy set-cookie: locale=en; Domain=dropbox.com; expires=Sun, 01 Mar 2026 16:17:05 GMT; Path=/; secure set-cookie: gvc=OTUwNzQ0Mzc3NzU2NjkxODM4OTE4NDk0MDgxMjAwNjgxMDIxMA%3D%3D; expires=Sun, 01 Mar 2026 16:17:05 GMT; httponly; Path=/; secure set-cookie: flash=; Domain=dropbox.com; expires=Tue, 02 Mar 2021 16:17:05 GMT; Path=/; secure set-cookie: puc=; expires=Tue, 02 Mar 2021 16:17:05 GMT; httponly; Path=/; secure set-cookie: bang=; Domain=dropbox.com; expires=Tue, 02 Mar 2021 16:17:05 GMT; Path=/; secure set-cookie: t=A0zo8e5fjm3PXvoUm3_M8Ore; Domain=dropbox.com; expires=Fri, 01 Mar 2024 16:17:05 GMT; httponly; Path=/; secure set-cookie: __Host-js_csrf=A0zo8e5fjm3PXvoUm3_M8Ore; expires=Fri, 01 Mar 2024 16:17:05 GMT; Path=/; secure x-content-type-options: nosniff x-frame-options: DENY x-permitted-cross-domain-policies: none x-robots-tag: noindex, nofollow, noimageindex x-xss-protection: 1; mode=block strict-transport-security: max-age=31536000; includeSubDomains strict-transport-security: max-age=31536000; includeSubDomains vary: Accept-Encoding x-dropbox-response-origin: far_remote x-dropbox-request-id: 014773fffd9744368958f7bd03e74ae3

これは Dropbox が(上記で共有したファイルの場合、返信に dl=1 の URL を含める形で)以下を使用することを好んでいることを示しています…

https://www.dropbox.com/s/dl/yerjh0ddm6rjs21/Wakka%20Wakka.mp3

しかし、これもまたリダイレクトを繰り返します…

HTTP/2 302 cache-control: no-cache,no-cache, no-store content-security-policy: sandbox content-type: text/html; charset=utf-8 date: Tue, 02 Mar 2021 16:18:51 GMT location: https://uc210b381124f7e2c595f0144180.dl.dropboxusercontent.com/cd/0/get/BJ5026I61AGfxjUZw4UAy6BoWHpQbSEN0gROgXEQDAhej5g_ws5PGpMKoAWm2TFZ78wPD3W3jnOfiuXDCymHTnohQYszoTuUH5QxZXpRt3Ebjgzx5kywk-ucuWZRdlX1RC0/file?dl=1# pragma: no-cache referrer-policy: strict-origin-when-cross-origin server: envoy set-cookie: locale=en; Domain=dropbox.com; expires=Sun, 01 Mar 2026 16:18:51 GMT; Path=/; secure set-cookie: gvc=NjAxMjA0ODM0MjU5NzUxOTc0NzM5NTA4Mzk1NTUxODQ1NTYxMzI%3D; expires=Sun, 01 Mar 2026 16:18:51 GMT; httponly; Path=/; secure set-cookie: flash=; Domain=dropbox.com; expires=Tue, 02 Mar 2021 16:18:51 GMT; Path=/; secure set-cookie: puc=; expires=Tue, 02 Mar 2021 16:18:51 GMT; httponly; Path=/; secure set-cookie: bang=; Domain=dropbox.com; expires=Tue, 02 Mar 2021 16:18:51 GMT; Path=/; secure set-cookie: t=h92aZNHZPxQ0OvaeouTFBVK-; Domain=dropbox.com; expires=Fri, 01 Mar 2024 16:18:51 GMT; httponly; Path=/; secure set-cookie: __Host-js_csrf=h92aZNHZPxQ0OvaeouTFBVK-; expires=Fri, 01 Mar 2024 16:18:51 GMT; Path=/; secure x-content-type-options: nosniff x-frame-options: DENY x-permitted-cross-domain-policies: none x-xss-protection: 1; mode=block strict-transport-security: max-age=31536000; includeSubDomains strict-transport-security: max-age=31536000; includeSubDomains vary: Accept-Encoding x-dropbox-response-origin: far_remote x-dropbox-request-id: 29b87eb2e3ef458f9490ba6f202d95af

次に、

https://uc210b381124f7e2c595f0144180.dl.dropboxusercontent.com/cd/0/get/BJ5026I61AGfxjUZw4UAy6BoWHpQbSEN0gROgXEQDAhej5g_ws5PGpMKoAWm2TFZ78wPD3W3jnOfiuXDCymHTnohQYszoTuUH5QxZXpRt3Ebjgzx5kywk-ucuWZRdlX1RC0/file?dl=1#

これをここに貼り付けてみましょう…

https://uc210b381124f7e2c595f0144180.dl.dropboxusercontent.com/cd/0/get/BJ5026I61AGfxjUZw4UAy6BoWHpQbSEN0gROgXEQDAhej5g_ws5PGpMKoAWm2TFZ78wPD3W3jnOfiuXDCymHTnohQYszoTuUH5QxZXpRt3Ebjgzx5kywk-ucuWZRdlX1RC0/file?dl=1#

¯\\_(ツ)_/¯ Dropbox を使わない理由として、また一つリストに加えるべき理由が見つかりました。

「いいね!」 2

公平を期すために言えば、Dropbox は Imgur のようなホットリンク保存サービスであると主張したことはありません。

もしメディアファイルを多用して Discourse を積極的に利用したいのであれば、以下のような多くの代替手段があります。

  • Discourse への直接アップロード(オプションでオブジェクトストレージサービスをバックエンドとし、CDN で保護することも可能)
  • YouTube、Vimeo、SoundCloud、Peertube など、埋め込みを許可したメディアホスティングに特化した数十のサービス
「いいね!」 3

@craigconstantine さん、こんにちは(お会いできて嬉しいです)。Dropbox の共有リンクについて思い出していただけたでしょうか?元のリンクの末尾に dl=0 がついている場合、これを raw=1 に書き換えると、異なる OS やブラウザを利用するほとんどのユーザーで再生可能なプレイヤーとして機能します。詳細は Dropbox の公式サイトに記載されていますが、複数のリダイレクトに関する点で少し見落としているかもしれません。お役に立てれば幸いです。

https://www.dropbox.com/s/yerjh0ddm6rjs21/Wakka%20Wakka.mp3?raw=1

「いいね!」 2

…いいえ、そこがまさに問題なのです。Safari ではもう機能しません。Dropbox の MP3 への URL は、一見オーディオプレーヤーのように表示されますが、実際に再生はされません。

「いいね!」 1

申し訳ありません、もう少し前まで読み進めていませんでした。

Mac の Chrome では、たまに再生されませんが、ハードリロード(Chrome では Cmd-Shift-R)を行うとページが再読み込みされ、再生可能になります。Safari では Shift-リロードですが、それでも再生可能になりません。

わかりました。Safari では、スピニング表示の後、以下のような画面になります。

私はまだ Catalina を使用していますが、動作しません。どこで変更が起きたのか不思議です。

もしかすると、見栄えの良いプレーヤーを避ける必要があるかもしれません。それは残念ですが、リンクをインラインの HTML ハイパーテキストとして含める場合、Dropbox の共有リンクの末尾を dl=0 にすると、新しいブラウザウィンドウと Dropbox のプレビューおよび再生ページが開きます。dl=1 にするとダウンロードが強制され、raw=1 にすると、Discourse に見られるような見栄えの良いプレーヤー付きの新しいブラウザウィンドウが開き、再生が始まります。これが役立つとは限りませんが、参考になるオプションかもしれません。

@Falco さん、これは管理画面でのアップロードファイルサイズ制限の調整が必要でしょうか?それとも、以前ご提案いただいたオブジェクトストレージサービスや CDN の利用が必要でしょうか?

デフォルトの制限を超えるファイルをアップロードする予定がある場合は、以下の手順で制限値を増やすことができます:Change the maximum attachment/upload size

オブジェクトストレージサービスの利用料を支払う余裕があり、かつコミュニティで大きなファイルのアップロードが予想されるのであれば、それは間違いなく正しい選択です :+1:

「いいね!」 1

こんにちは。このスレッドを見ました。私の理解を要約すると以下の通りです:

  1. 現在、Discourse に Dropbox のオーディオリンクを含めると、「onebox」機能によってリンクがオーディオプレーヤーに変換され、Discourse の投稿内で再生しようとするようになります。

  2. しかし、Dropbox はリモート再生を許可していません。そのため、ユーザーは実際には再生されないオーディオプレーヤーを表示することになります。リンクの末尾に ?d1=1 を追加してプレーヤーが再生できるように試みることもできますが、これは多くのブラウザで機能しません(私の Chrome の更新版でも機能しません)。

  3. 代替案としては、ファイルを直接アップロードしてもらう方法がありますが、オーディオファイルは大きくなりがちでコストがかかる可能性があります。あるいは、Dropbox 以外のサービスを利用する方法もあります。

最初の投稿にある元の質問は、今でも妥当だと考えます。「onebox」が「機能しない」のであれば、onebox 機能をそのリンクに対して無効にし、ユーザーに最もシンプルな結果(Dropbox 上の実際のファイルにアクセスできるリンク)を提供できるようにすると良いでしょう。

ユーザーはおそらく、私が刚才説明した 1〜3 のステップを理解しません。彼らは Dropbox リンクが (1) 自動的に再生されるか、(2) Dropbox サイトに移動してそこで再生されるかのどちらかだと考えるでしょう。したがって、ファイルが再生できない場合は、ファイルを表示するために Dropbox に移動するクリック可能なリンクを提供するのが良いでしょう。

「サイト設定」の「ブロックされた Onebox ドメイン」に dropbox.com(または適切なドメイン名)を入力しましたか?

良いアイデアですね。試してみたところ、予想外の結果が出ました。

  1. ブロックするワンボックスドメイン設定に、www.dropbox.com、https://dropbox.com、dropbox、https://www.dropbox.com と入力しました(どの表記が正しいか確信が持てなかったので、網羅的に設定しました)。

  2. その結果、音声ファイルはワンボックス表示されず、(使えない)音声プレイヤーに変換されることもなく、単に Dropbox のリンクとして残りました。Dropbox が自サイト以外で音声再生を行わない限り、音声ファイルにとってはこれが最善の結果のようです。

  3. しかし、驚いたことに、Dropbox をブロックドメイン設定に入れたにもかかわらず、他の Dropbox のワンボックス表示は依然として発生していました。例えば、Dropbox の画像リンクを貼り付けると、Discourse の投稿内に画像そのものが表示されました。

「いいね!」 1

推測するに、音声URLが www.dropbox.com にあり、入力した最初の値によってブロックされていた一方、画像は dropbox.com または somethingelse.dropbox.com にあり、他の入力値ではブロックされなかったためではないでしょうか。

説明からは完全には明確ではありませんが、その設定は入力したドメインとそのすべてのサブドメインに適用されます。つまり、正確に dropbox.com という値を入力すると、dropbox.com、www.dropbox.com、anythingelse.dropbox.com のすべてがブロックされます。

「いいね!」 1