- - PR -
処理をクライアントに返さずにデータをPOSTする方法
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-06-29 17:19
こんにちは、ページ遷移時のResponseデータに関する質問です。
行おうとしている動作は以下のようなものです。 xt_process.aspx なるASPXページがあったとしまして このページからデータをPOSTしたいのです(QueryStringではなくRequest.Formでとれるように)。 このとき、クライアントから onload="JavaScript:document.form1.submit();" などでPOSTしてしまうと、ブラウザの戻るボタンなどで戻ったときに このxt_process.aspxに戻ってしまいます。 これをxt_process.aspxに戻らないようにしたいため、 xt_process.aspxのサーバ処理でsubmitしたいのです。 Response.RedirectではQueryStringしか投げられないようですし どなたか解決方法を知ってらっしゃいましたらご教授お願いします。 わかりにくい説明になってしまい申し訳ないです。 よろしくお願いします。 | ||||
|
投稿日時: 2004-06-29 17:27
Webアプリの本質上、ご希望のような処理は不可能です。
投稿のような提起内容は初めてですが、 ブラウザの「戻る」ボタンに泣かされている人はたくさんいますよ。 「ブラウザの『戻る』ボタンを禁止する方法」で検索をかければいくつも見つかります。 この会議室でも、いくつもスレッドがたったはずです。 代表的なのは、JavaScriptを使う方法でしょうか。 ただし、この方法でも、ショートカットを遮断することはできません・・・。 | ||||
|
投稿日時: 2004-06-29 17:42
ロードされてすぐにポストするデータって、いったい???
| ||||
|
投稿日時: 2004-06-29 17:53
さっそくのご回答ありがとうございます。
> ロードされてすぐにポストするデータって、いったい??? 例えば、 PageA → PageB と画面遷移するとします。 ここでPageBの先頭で先ほどの xt_process.aspx に飛び、 xt_process.aspxでの処理が終了したら再びPageBに戻ってきたいのです。 このときPageAからPageBに渡されたデータをそのまま(POSTはPOST、GETはGET) 再度PageBに送信したいのです。 PageA→PageBに渡されるデータをxt_process.aspxに渡すのはSessionを用いて 実現したのですが、そのあとで上記のような理由で行き詰まってしまいました。 やっぱりこのような方法はできないのでしょうか。。。 | ||||
|
投稿日時: 2004-06-29 18:01
??? xt_process.aspxは、ユーザに見せたいページがあるのではなく、処理を行うだけ? あ!時間がかかる処理を行う為に、PageB.aspxでいったん画面を見せて、xt_process.aspxで処理を行う、ってこと? PageB.aspxで画面を見せないなら、Server.Transferが使えるけど。。。 | ||||
|
投稿日時: 2004-06-29 18:09
説明不足だったようで申し訳ありません。
PageBはユーザに見せるページです。 ですが、その先頭であるチェックに引っかかったら、xt_process.aspxに飛ばすのです。 例えば、ログインしていなければxt_process.pspxでログイン処理を行い、 ログイン後、再度PageBに戻ってくるようなイメージです。 このとき、PageBの先頭では再度チェックを行いますが、先ほどログイン処理を 行っていますので、今度はチェックを抜け通常のページが表示されるという感じです。 |
1