重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

JSP + Servlet + JavaScriptでwebアプリを作っています。

フォームに値を入力して、リクエストをPOST送信したあとに、
ブラウザ(IE)の「最新の情報に更新」を押すと、もう一度POSTしてしまいます。

「最新の情報に更新」を押したときはリクエストを送信せず、
送信ボタンを押した場合のみリクエストを送信するには、
どのようにしたらよいでしょうか?

セッションのスコープをを変えればよいのか、
JavaScriptやHTMLで対応できるのか、
よく分からないでいます・・・。

宜しくお願いします。

A 回答 (1件)

ブラウザのボタンを制御するのは無理があるのではないでしょうか。


Webアプリケーションでは一般的に、POSTリクエストの後にリダイレクトするようにします。
そうしておけば「最新の情報に更新」を押した時に発行されるリクエストはGETになるので、
もう一度POSTされる心配はありません。
    • good
    • 0
この回答へのお礼

oka5130様、こんばんは。

やはりブラウザまでは制御できないのですね・・・。

フィルターを作って、リクエスト時のメソッドを取得したみたのですが、
「最新の情報を取得する」によるリクエストは、
GETのときもあるし、POSTのときもありました。

私が作っているwebアプリは、POSTを受けたときにフォワードしています。
リダイレクトに変えたり、ヘッダ情報で差異を見つけてフィルタしたり、
もう少しいろいろ試してみます。

ありがとうございました☆

お礼日時:2008/06/21 00:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


OSZAR »