- 締切済み
httpsへの移行について、II
前質問でhttpsへの移行について回答をいただきまして(ありがとうございました)、 ほぼ理解できたのですが 新たに不明な事が出てきましたので質問させていただきます。 現在、html上のボタンをクリックすると 表示しているhtmlの上に幅狭で、window.openして、データを表示している処理があります。 ボタンクリック時、window.openを行っていますが、その際のJavaScript処理は (1)現在日時を取得 (2)windowのサイズ計算(幅は情報が表示できる範囲の固定、高さはscreen.heightの半分) (3)window.openのパラメータセット key="aaa.exe(cgiアプリのexe名)?KEY=(日時)"; para="width=380,height=(2)で求めた値+他option; (4)windowをopenして位置調整 newwin = window.open(key,'infomation',para); newwin.moveTo(15,20); newwin.focus(); ・・・のような処理になっています。 これだと、methodは「GET」ですよね。 これを「POST」にする(SSL対応)処理は、どうしたらいいのでしょう??? 例えば、、、ダミーhtml(ダミーじゃなく、見出し部分などだけのhtml?)を作成しておき、 window.open時に、そのダミーhtmlを「https://・・・ダミーhtml」でopenし、 ダミーhtml内に、methodはpost、アクションはcgiのaaa.exe・・・のようにしておき、 onloadで処理させるのかな、、、 ・・・とも思ったのですが、その場合、パラメータとして渡す日付はどうやって渡せばいいの??? と、はまってしまいました。 よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- Lchan0211b
- ベストアンサー率61% (573/930)
前回の質問の回答で > formのactionにGETを使用していないか? > 通信内容はSSLで暗号化されますが、送信先のURLは暗号化されません。 > 暗号化したい場合は、POSTなどへ変更した方が良いです。 という回答をした人がいましたが、これはウソです。 SSLで暗号化すれば、GETでアクセスした時のURLもパラメータ含めて 暗号化されます。 (参考) http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=26986&forum=14 したがって、SSLを使うからといってPOSTに変更する必要はありません。 今のスクリプトで大丈夫です。 他の部分もGETをPOSTに変更する必要はありません。
- b0a0a
- ベストアンサー率49% (156/313)
パラメータを隠してCGIに情報を送りページを開きたいのなら 基本的にCookieを使うしかありません
お礼
b0a0a様 ありがとうございます。 最後の手段としてCookieを使いたいと思います。
- t_ohta
- ベストアンサー率38% (5292/13827)
SSL対応でPOSTにするとは、どういう事でしょう。 GETメソッドでもHTTPSで通信させればSSLに対応しますよ。
お礼
t_ohta様 ありがとうございます。 GETでも大丈夫なんですね。 でも実は全部POSTにするよう要請もあるんです。 過去にGET--->POSTに手直しした経緯があります。 その際に影響の無い(改ざんされない)「参照」のみの部分はGETのままになっていまして、今回それも直さないと。。。
- ORUKA1951
- ベストアンサー率45% (5062/11036)
リンクで開く場合はQUERY_STRINGかPATH_INFO以外データを渡す方法はありません。POSTはformの機能ですから <form method="post" action="./aaa.cgi" onsubmit="return false;"> <input type="text" name="data" /> <input type="submit" name="form" value="送信" onclick="open(this.form)"/> </form> <script type="text/javascript"> function open(f) { f.target = "newWindow"; var w = window.open("about:blank", f.target, 'width=200, height=200'); w.focus(); f.submit(); } とか・・ ダミーhtml(ダミーじゃなく、見出し部分などだけのhtml?) じゃダメですよ。 CGIを使うなら、この元ページ自体もCGIから出力させるほうが楽だと思います。 </script>
お礼
ORUKA1951様 ありがとうございます。 ちょっと難しそうですが、理解しながら上記コードを組み入れて試してみたいと思います。
お礼
Lchan0211b様、 有難うございます。 ネットで検索していく中でも、掲載日付等がなかったりするサイトもあるので、古い情報を見て「え---っ、これじゃダメなの?!」って、結構焦ったりすることがあります。^^; 現時点の情報としましては、サーバ側の対応もできていない(私はこの辺りは理解できていません)のでSSLアクセラレータの導入も検討・・・のようです。 ---> そしたら、何にもしなくていい!? 全部POSTにする要請もありますが、現在運用中でも有るので 今のままで許容されるのであれば、そのまんまにしたいと思います。 一応、事前対策として GET、window.open(URL=cgiで出力) ---> POST、window.open(URL=cgiで出力)の方法を完璧にしておきたいです。