ファイルへの直接URLと共有ページを見分ける

HTTPS URLがHTMLの共有ページ、サインイン画面、またはブロックされるリダイレクト経路ではなく、信頼できるサイズ情報とともにファイルデータを返すか安全に確認します。

最終確認日

スクリーンショットは英語版の画面です。

Remote downloadフォームにはファイルデータを直接返すURLが必要です。dosyaはGETとRange: bytes=0-0でURLを調べます。ブラウザにダウンロードボタンが表示されても、HTMLとXHTMLの応答は共有ページとして扱われます。

直接ファイルURLと共有ページを見分ける4段階のフロー図。プロバイダーのCookieなしで候補URLを開き、ファイルデータが返ることを確認します。リダイレクトを一つずつ調べ、公開HTTPSとポート443を確認します。最終応答のサイズヘッダーでContent-Rangeの合計またはContent-Lengthを確認します。キューに入ったファイル名とサイズをプロバイダーのファイルと照合します。
この図は、プロバイダーのCookieなしで候補URLを開き、ファイルデータが返ることを確認する流れを示します。リダイレクトを一つずつ調べて公開HTTPSとポート443を確認し、最終応答のサイズヘッダーにContent-Rangeの合計またはContent-Lengthがあることを確認します。キューに入ったファイル名とサイズをプロバイダーのファイルと照合します。スクリーンショットを原寸大で開く。

始める前に

許可された公開HTTPS URLをポート443で使用してください。dosyaはCookie、対話的なサインイン状態、カスタムリクエストヘッダーを転送しないため、ブラウザのセッションなしで動作するソースが必要です。

使用可能な応答は、206応答の場合はContent-Rangeで、それ以外の場合は数値のContent-Lengthで正の合計サイズを返します。dosyaは最大5回のリダイレクトをたどり、各段階で公開アドレスのチェックを行います。

手順

  1. プロバイダーからサインアウトしたブラウザのプライベートウィンドウで候補のリンクを開きます。
  2. サインインを求めるページ、共有操作を表示するページ、または実際のファイル応答を開始せずHTMLを返すページは使用しないでください。
  3. リダイレクト後の最終HTTPSアドレスを調べ、ローカルホスト名、プライベートIP、443以外のポートを使用していないことを確認します。
  4. 応答が正のバイト長を示すことを確認します。合計サイズのないチャンク転送ストリームはリモートダウンロード用に予約できません。
  5. 最終的な直接URLを連携 → リモートダウンロードに貼り付け、保存先を選んでファイルを取得を選択します。
  6. **ダウンロードを開始しました。**を確認し、ページを離れる前にキューに入ったファイル名と合計バイト数をプロバイダーのファイルと照合します。
直接ファイルURLの確認に関する参考画面:dosyaのRemote Downloads概要ページ。
直接ファイルURLの確認に関する参考画面:dosyaのRemote Downloads概要ページ。スクリーンショットを原寸大で開く。

期待される結果

チェックで応答が受け付けられると、Content-Dispositionまたは最終URLからファイル名が決定され、合計バイト数が判明したジョブが作成されます。保存される名前は安全な形式に変換され、200文字以内に制限されます。

ファイルへの直接リンクではありませんはソースがHTMLを返したことを示します。Source returned HTTP Nは最終応答がHTTPエラーステータスを返したことを示します。共有ページを再利用せず、プロバイダーのダウンロードURLを生成してください。

関連ガイド

この記事は役に立ちましたか?

評価の結果を読み込んでいます…

投票すると、回答を変更できるように、必要な投票用Cookieが最長180日間保存されます。

質問と回答

このガイドの手順について質問できます。質問は確認後に公開されます。

公開の質問には、アカウントの詳細、認証情報、非公開ファイルを含めないでください。これらについては 非公開サポート をご利用ください。

質問を読み込んでいます…

    dosyaアカウントにサインインすると、質問を投稿できます。

    やり直す前に結果を確認

    操作をもう一度確認する必要があるときは、次の共通の確認事項をご利用ください。