私は、perlスクリプトを使用してKMLファイルを作成するためのWebページを用意しています。 perlスクリプト。フォームが送信されると、スクリプトが実行され、kmlファイルが作成され、ユーザーにファイルの保存が促されます。私が不安を感じる唯一の部分は、スクリプトがKMLを作成した後に、ユーザーにファイルを保存させる方法です。私は、ダウンロードを促すperlスクリプトを持っているのか、ダウンロードを促すHTMLページに何かを使用していますか?私はこれを行うための最善の方法はわかりません。ウェブページ上でperlスクリプトを実行した後にファイルを保存する
1
A
答えて
10
KMLを構築するようサーバーに指示するためのリンクまたはフォームがある場合は、通常はKMLを生成し、追加のHTTPヘッダーを使用してブラウザに送り返します。あなたが欲しいヘッダは以下のとおりです。「whatever.kmlは」あなたは、ファイルが呼ばれるようにしたいものですattachment;filename=whatever.kml
へ
Content-disposition
セット。Content-type
をapplication/vnd.google-earth.kml+xml
に設定します。
Content-disposition
は、それを処理しようとする代わりにKMLをダウンロードするようにブラウザに指示する必要があります。
したがって、Perlスクリプトはブラウザにダウンロードを促すように促します。 KMLファイルの内容を想定し
3
は$のkmlであり、あなたのような何かやりたいと思います:(?とGoogle地球の関連性)
use CGI;
my $cgi = new CGI;
print $cgi->header('-Content-disposition' => 'attachment;filename=kml.xml',
'-Content-type' => 'application/vnd.google-earth.kml+xml');
print $kml;
関連する問題
- 1. ウェブページ上にファイルを保存する
- 2. perlスクリプト内でperlスクリプトを実行したい
- 3. selectを実行した後にdatarowを保存しますか?
- 4. perlスクリプトでcpを実行すると、存在するファイルは上書きされますか?
- 5. Railsペーパークリップ:添付ファイルを保存した後何かを実行する
- 6. ウェブページ上でJavaアプリケーションを実行する
- 7. ウェブページ全体がロードされた後にスクリプトを実行する方法
- 8. perlでpythonスクリプトを実行する
- 9. 保存後コールバックを2回実行した後
- 10. 実行可能ファイルにperlスクリプトをコンパイルする際の問題
- 11. JavaScriptを実行した後にウェブページのスクリーンショットを撮る方法
- 12. ウェブページからperlスクリプトを実行する最も良い方法は?
- 13. 保存ボタン、ウェブページをmhtファイル(.net 4 vb)として保存
- 14. ログオフ後、Unix上でPerlスクリプトを実行するにはどうすればよいですか?
- 15. PHPスクリプトを変更してPerlスクリプトとして実行する
- 16. linuxのファイルからPerlスクリプトを実行しています
- 17. スクリプト実行後にユーザーがフォームページに入力したデータを保存する方法は?
- 18. 保存したファイルを保存した後に表示するためにアプリケーションを再実行する必要があります
- 19. vimでファイルを保存した後、bashコマンドを静かに実行する方法はありますか?
- 20. Eclipseの保存時にant展開スクリプトを実行する
- 21. ウェブページでpythonスクリプトを実行するには
- 22. PerlでSQLファイルを実行
- 23. Perlエンコーディング - ファイルをUTF8に保存
- 24. 実行後にPython smtplibエラー.pycが保存されました
- 25. パラメータを渡した後にファイルを保存する
- 26. ファイルをVIに保存した後、ウェブブラウザをリフレッシュする方法
- 27. Vimにファイルを保存した後にシェルコマンドを自動的に実行する方法は?
- 28. Pythonインタプリタで保存されたスクリプトを実行しています
- 29. Notesデザイナーは保存後にエージェントを実行します
- 30. PHPスクリプトで生成されたファイルを保存ダイアログでディレクトリに保存
をOK、私は以下を参照してください。それは、KMLが何であるかです。 –
いくつかの余分なHTTPヘッダーで返信するとどういう意味ですか?実際のファイルの最上位の行を意味するのか、ヘッダーを実際のページに送るのでしょうか。私はページにファイルを送信する方法が本当にわからない。私はちょうどファイルを作成し、それをホスティングに格納することができましたが、それは非常に効率的ではありません。 – shinjuo
@shinjuo:Perlスクリプトはサーバ上で動作しており、リモートのHTMLページから実行されています。それで、あなたはHTMLを送り返すのと同じ方法でKMLを送り返します:おそらくそれを印刷します。あなたがブラウザにデータを送り返す方法とHTTPヘッダーを設定する方法の詳細は、スクリプトがどのようにホストされ、どのフレームワークが使用されているかによって異なります:古い学校のCGI、FastCGI、mod_perl、Catalyst、Dancer、... –