• 締切済み

ASPで別ページにPOSTで送信したい。

お疲れさまです。2回目の質問になります。皆様よろしくお願いします。 行いたい事は タイトル通り 別ページにPOSTで送信を行いたいのです。 GET送信はResponse.Redirectで送信できますが パラメータが出てしまいます。 ASPの次のページはASPではないのでASP間のパラメータ渡しは出来ません。 なにとぞ皆様の良い知恵をお貸し下さい。サーバーはNT4.0です。 よろしくお願いします。

みんなの回答

  • akino4
  • ベストアンサー率18% (35/185)
回答No.3

えっと、通信回線上でスニッフィングする分にはみえませんが、 ブラウザで実際に見ているユーザといういみでは、そのユーザに十分に やるきと、悪意があればできます。 必要な技量はプログラミング暦1年~3年ていったところでしょうか。 だって、SSLってのはユーザがとサーバ以外の人から盗聴されない ためのものですから。 ちなみに、HTMLのタグを見ればわかるとおり、ソースに書かずにpostする 方法は、ユーザが入力しない限りできません。 なぜなら、ヘッダ以外の部分はソースとしてIEやネスケに表示されますよね そして、ヘッダにはそんな機能ないからです。 もしかして、まったく別のサイトに飛ばさなきゃいけないのかな? それなら、zodiax等のサイトをまたいでセッションをはるソフトを 使ってはいかがでしょうか?

hiro24
質問者

お礼

お答えありがとうございます。3年目で製造から 始めて設計をやる事になって苦労しています(^^ゞ そうですね。ちとセキュリティを考えると甘い考えを持っていた ようです^^;ご指摘ありがとうございます。 ASPからBASP21コンポーネントを使いソケット通信を行い HTMLをASPに取得してきてそれをはきだすことを一案として 提案してみます。ありがとうございました^^

  • akino4
  • ベストアンサー率18% (35/185)
回答No.2

ユーザに見せちゃいけない情報はpostでもgetでもcokkieでもサーバの外に だしちゃやばいでしょ? そういう時はセッションを張ってセッションごとにデータを保持したがいいんじゃ? ちなみにセッション張ろうとするとすべてを動的ページ生成しなければ ならないですけど・・・・それは諦めましょう。 セッションを継続するだけのやつつくってそれに渡す引数で表示する HTMLファイルひっぱってくると まぁ~逃げる方法としてはサイズが小さいフレームを作ってそっちは更新されないけど・・・・って やればjavascriptが動いている環境でのみ動的ページ生成を使わずに セッションを継続してるような気になれます。

hiro24
質問者

お礼

回答ありがとうございます^^ セッション管理はセッション変数を使うといわれてるのでしょうか? (違ったらゴメンナサイ) 飛ばしたい先ページは残念ながらASPではないので セッション変数を使いまわすという事は出来ないのです。 今回サーバーとブラウザーの間にはSSLが入るのでPOST で送ると電文は暗号化されるのでスニーファーなどでも読めない (ユーザーもブラウザーしか読めない)と認識してるのですが 駄目でしょうか^^;?まだSSLについては調査していないので この程度の知識しかありませんが すいません。

  • hequil
  • ベストアンサー率65% (242/372)
回答No.1

パッと思いついたのは、Response.Writeで <html> <body onLoad="document.frm.submit();"> しばらくお待ちください。 <form action="test.cgi" name="frm"> <input type="hidden" name="test1" value="<%= strValue1%>"> <input type="hidden" name="test2" value="<%= strValue2%>"> </form> というようにHTMLを書き出して、自動的にPOSTでsubmitしてくれるようにすればどうでしょう? #上記HTMLが動作するか未確認ですが(^^;; 参考まで

hiro24
質問者

お礼

さっそくのお返事 ありがとうございます^^ ただ まずいんです^^; その方法だと一瞬そのHTMLがソース上に出てしまう じゃないですか。今回はきっちり情報を隠蔽したいんです。 でもどうもありがとうございました^^

関連するQ&A

  • ASP.NET C#でPOST受信

    WebサーバのPost受信を行う際に、 Request["parameter"] とすると、POSTを受信できますが、 GETのパラメータがあると、GETを優先して受信してしまいます。 GETのみだと、 Request["parameter"]でも Request.QueryString["parameter"]でも 受信可能です。 GETパラメータがあっても、POSTのみを受信する方法はあるのでしょうか?

  • WindowsアプリにPOSTのパラメータを渡す

    WebフォームからPOSTメソッドで送信したパラメータを、.NETのスマートクライアントに引き渡す方法を考えています。 ノータッチデプロイメントのスマートクライアントはどうやらクエリストリングを受け取ることはできるようですがPOSTが受け取れません。 現在試しているのはいったん、クエリストリングをASP.NETで受け取り、クエリストリングに変換してスマートクラインアントのページに転送するやりかたです。 この転送をサーバ内で処理しようとする(つまりServer.Transferを用いる)とブラウザはダウンロードされるのが.exeだとは気づかすテキストとして扱ってしまいます。Response.Ridirectを用いるとうまくいくのですが、これは結局クライアントがGETメソッドを投げてしまうので、できれば避けたい状況です。 なにかいい方法はないでしょうか?

  • サーブレットからパラメータをPOST形式で送信するには。

    現在JavaでWEBアプリケーションを開発しています。 技術的な事で、皆様にご質問がございます。 サーブレットから、他のWEBアプリケーションのサイトへ POST形式でパラメータを送信するには、どうすれば 良いのでしょうか? GET形式で送信するなら、 response.sendRedirect("http:aaa.com?key1=aaa&key2=bbb") ってな具合で、URLの後ろに送信したいパラメータを つければ、GET形式で送信できますが、 POST形式で送る事はできないのでしょうか? どなたか、ご存知の方がおられましたら、 ご教授よろしくお願い致します。

    • ベストアンサー
    • Java
  • postで送信できないんです

    oracle plsqlで開発しています。 htmlからpostでプロシジャーに値をわたしていますが、 パラメータが渡っていないようです。 エラーページでREQUEST METHOD=GETと表示されてしまいます。 getで送るとページが表示されるのですが・・・ formタグのmethod=postにすればREQUEST METHODには自動的にPOSTがはいると 思っていたのですが、どこかで設定しなければいけないのでしょうか。 とても困っています。 どなたか教えてください。

    • 締切済み
    • CGI
  • ASPからのEXEファイル起動

    VBScriptで作ったASPからVisualBasicで作ったEXEファイルを起動するプログラムを作りました。 そこでEXEファイルを起動する際にASPで持ってる情報(ユーザID)を 起動をかけるEXEに渡したいのですがうまくいきません。 DOS画面より >C:\abc.exe 10 とうつとパラメータ 10が引きわたり正常に起動します。 ところがWEBから Response.Redirect("C:\abc.exe 10")とやると ページが見つかりませんとなります。 ちなみに Response.Redirect("C:\abc.exe")だと パラメータの受け渡しはありませんが起動はできます。 何がいけないんでしょうか・・・? ご教授願います。

  • ASPで画面間のパラメタ受け渡し

    こんばんは。ASP初心者です。 ASPでWEBページの作成を行っています。画面遷移をResponse.Redirect()で行っているのですが、遷移前のページと遷移後のページでパラメタを受け渡したい場合はSession("hoge") = "hogehoge"のようにセッションに入れる以外、何か方法はないでしょうか。リクエスト間でパラメタ渡せればがいいので、セッションを通じて保持しておく必要がないのです。クエリを使用するとアドレス欄に変数の値が見えてしまうのでできれば使いたくありません。

  • 1アクションでPOST・GET、両方送信したい

    1つのフォームからボタンをクリックして、 POST・GET送信と、両方飛ばすには、どうすればよいでしょうか? URLに「表示させたいパラメータ」と「表示させたくないパラメータ」 があります。 「表示させたいパラメータ」は、GETで、 「表示させたくないパラメータ」は、POST送信したいのですが、 1つのフォームで、同時に飛ばす方法が分かりません。 <form method =post action=hoge.php>  <input type=text name="piyo" value="piyo">  <input type=hidden name=puyo_id value=puyo>←これだget送信したい  <input type=submit value="送信"> </form>

    • ベストアンサー
    • PHP
  • データの受け渡し

    A.aspで入力されたFormデータをGETで送信し B.aspで内容を判断し、C.aspまたはD.aspにデータを受け渡す。 という事を行いたいと考えています。 B.aspのソースは下記の感じです。 If Request.QueryString("Add") = "C" THen Response.Redirect "C.asp" Else Response.Redirect "D.asp" End If C及びDへデータを受け渡すには、どのようにしたらよいでしょうか? また、今回GETを利用していますがPOSTを利用して同様な事は出来るのでしょうか? よろしくお願い致します。

  • テキストリンクをPOST送信したい

    「自由に入力できる任意の値」ではなく、「常に固定な値」をPOST送信するにはどうすればよいでしょうか? ■現状 <a href="index.php?hoge=1">hoge</a> ・テキストリンク形式 ・このままだと、GET送信で、URLにパラメータが表示されてしまう。  ↓ ■やりたいこと ・URLにパラメータを表示させたくない ・クリックした時点で、常に「hoge=1」をパラメータとして送りたい ■知りたいこと ・遷移前(パラメータを送る側のページ)の書き方を教えてください

    • ベストアンサー
    • PHP
  • method=POSTしているのにGETで送信

    WEBのシステムでHTML上はmethod=POSTと書いてリクエストを実行しているのに、たまにアクセスされるリクエストのログがGETで送信されるという事象が発生しました。もちろんPOSTで送信されるべき画面がGETで送信されているのでリクエストのパラメータが渡ってきていません。 ユーザが勝手にHTMLを書き換えてアクセスしているということはまず考えられないのですが、なにか原因はありすでしょうか? ちなみにIE6での利用です。