新規投稿 記事一覧 ホーム
●ご利用方法,ご利用に際しての規約はこちらをお読みください。
こちらからの投稿は、先頭に表示されているコメントへの返信になります。
CGIを使用したファイルのダウンロード 伊集院博 さん [ 7月2日(月) 13時14分 ]

    お世話になります。

    AS/400のCGIでフロント・エンドをウェブ化する作業を行っています。
    HTTPサーバーはAS/400(v5.3)のApacheを使用しています。ローカルで使用しています。
    質問ですが、グループウェアなどでクライアントから文章をダウンロードできる仕組みがあります
    が、
    「ファイルのダウンロード」というサブウインドウが表示され、「保存」のボタンを押すとクライ
    アントの
    どこのフォルダーにダウンロードするか指定できて、ローカルに保存できる仕組みです。
    この機能は、HTTPサーバーの機能でできるのでしょうか?どのようにしたら可能になるでしょう
    か?
    的外れな質問でしたらお許しを。

    RE:CGIを使用したファイルのダウンロード IKD さん [ 7月2日(月) 17時10分 ]

      結論から申し上げますとダウンロードだけであれば何もしないでも可能となります。

      このサイトでも[Source]ボタンを押すとブラウザにソースが
      表示されますが、これは HTTPサーバーから
      Content-Type が、テキスト・ファイルとしてブラウザに戻されていますので
      ブラウザは警告なしに表示しているだけです。
      しかし、HTML, TXT 以外のその他の Content-Type のファイルの取得を
      ブラウザから要求すると、例の保存ダイアログが表示されるのですが
      これはブラウザの機能です。
      従って、何も設定する必要はありません。
      ( アクセス許可の設定は当然、必要ですが)
      ただしファイルを変換するのか、あるいは無変換でバイナリで
      ダウンロードするのかは HTTP構成ファイルで設定する必要があります。

      よくオープン・ソースでオブジェクトをクリックすると保存ダイアログが
      表示されてダウンロードが開始される機能を見かけますが
      大抵のオープン・ソースなどでは HTTP構成で、ディレクトリーの表示を許可しているだけの
      簡単なもので、配布者は何も設定も行っていません。

      最後にもし、CGI を利用してという話であれば、
      CGI で、IFS のどこかにファイルを出力しておいてから
      CGI からは、ブラウザへ、そのファイルへのリダイレクトを戻せば
      CGI によるダウンロード機能をご希望のとおり作成することができます。
      リダイレクトのサンプルは、このサイトの

      http://www.as400-net.com/cl.html

      の「26. すべてのOS/400 Ver で印刷スプールを PDF 化するには」
      に、あります。

      RE:CGIを使用したファイルのダウンロード 伊集院博 さん [ 7月3日(火) 10時16分 ]

        IKDさん回答ありがとうございます。
        特に何も設定が必要なくブラウザの機能という事で
        HTMLの中に以下のリンク先を書き出してみました。
        <a href="HTTP://172.19.XX.XX/RH220.XLS">ダウンロード</a>
        RH220.XLSは、IFS環境にCSV形式でRPGによって書き出したデータです。
        実行してリンク先をクリックするとブラウザの中にExcelにデータが
        表示されました。
        私のイメージでは、ファイル保存(もしくは、表示or保存のダイアログ表示後)の
        ダイアログが表示される様にしたいのですが、何か指定が間違っているのでしょうか
        私のイメージの方法ができないのであれば、最悪データを表示した後、
        ファイルに保存させようかと妥協案を考えています。

        RE:CGIを使用したファイルのダウンロード IKD さん [ 7月3日(火) 18時21分 ]

          恐らくは設定の問題です。
          初めてダウンロードする拡張子のダウンロードで最初はダイアログによる警告が
          出力されますが、そのダイアログで「警告をする」のチェックをはずして
          ダウンロードすると次回以降は警告が表示されません。
          また、拡張子 CSV に Excel を関連App と設定しているかも知れません。
          あるいはサーバー側で CSV に対して mx-excel を応答するように
          HTTP構成を変更されている可能性もあります。
          どのような変更が行われたのかは予想できません。

          いずれの場合にしても PC の設定が変更されていることに起因している可能性が大です。
          開発用PC の設定はよほど PCに精通していない限り、省略値を変更されないほうが
          よいでしょう。

          RE:CGIを使用したファイルのダウンロード 伊集院博 さん [ 7月4日(水) 10時30分 ]

            IKDさん丁寧な対応ありがとうございます。
            拡張子を色々変えてテストした所、.ZIPだと警告ダイヤログのポップアップが表示されました。
            .DAT、.XLS、.CSV...などを指定するとExcelやメモ帳が立ち上がってデータが表示されてしまいま
            す。IKDさんがおっしゃる通りPCの設定のような気がします。
            原因(設定方法)が分からないので、運用としてはデータを表示させた後、各自のPCで保存して
            もらう事で対応します。
            ちなみに御社のソースダウンロードも全てメモ帳でソースが表示されてしまいます。

            RE:CGIを使用したファイルのダウンロード IKD さん [ 7月5日(木) 9時5分 ]

              Windows エクスプローラを起動して[ツール] - [フォルダ・オプション]を
              選択して「ファイルタイプ」のタブを選択してください。
              この例えば、サイトのソースは拡張子 .mbr で表示されていますので
              .mbr の実行App としてメモ帖が指定されているはずです。
              Window のファイルを「アプリケーションから開く」を使って
              開くときに「ファイルを開くアプリケーションの選択」のダイアログが
              表示されますが、このダイアログの最下部には
              「これらのファイルを開くときは、いつもこのアプリケーションを使う」
              にチェックが入っているはずです。
              このチェックをはずさないままで、起動すると次回以降は
              その App が拡張子と関連づけられてしまいます。
              過去に .mbr をメモ帖でこのようにして開いたことがあるかも知れません。
              Windows を使うときは Microsoft が省略値として設定している値も
              十分に考慮する必要があります。
              上記の「Appから開く」ではチェックをはずしてから開くことが
              一般に推薦される操作です。
              すべてのフォルダ・オプションをチェックしてみてください。

お名前
パスワード
e-mailアドレス
タイトル
ホームページ
アドレス