
1.HTTPリクエストヘッダーって、任意の項目名で値を設定する事ができるのでしょうか?
その場合、どのような設定方法(タグ?)になるのでしょうか。
2.HTTPリクエストヘッダーにある情報を設定し、
そして、そこから別のページに遷移しその別のページで、遷移前に設定していた
HTTPリクエストヘッダーの情報を読み込みたいのですが、実現可能でしょうか?
また可能な場合、例えば、Javascript、HTMLなんかを利用して可能でしょうか?
初歩的な事かも知れませんが、よく分からず困ってます。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
1.HTMLだけでFORMやAタグにに何か追加するだけで実現可能かと言うことであれば不可能です。
JavaScriptを使う XMLHttpRequest() であれば可能です。
2.サーバーサイドでプログラムを動かせば可能です。
そもそも何をしたいのかを具体的に書くと、良いアドバイスが得られる可能性があります。
つまり、
>HTTPリクエストヘッダーにある情報を設定し、
>そして、そこから別のページに遷移しその別のページで、遷移前に設定していた
>HTTPリクエストヘッダーの情報を読み込みたい
によって何をしたいかです。
この回答への補足
ご回答どうもありがとうございます。
何がしたいかといいますと
シングルサインオンのようなものなのですが。
例えばあるサイトにいて、そこでユーザーとパスワードを保持。
クリックなどのイベントで遷移先に飛びます。
遷移先ではHTTPリクエストヘッダーに設定されているユーザーとパスワードから認証。
ここで遷移先はプログラムで既に用意されてたりするのですが、
遷移元に関してはなにもなく、
遷移元をどのように作成するかという所で悩んでます。
遷移元の機能としては、遷移先に飛んで情報を渡すという所になります。
よろしくお願いします。
No.4
- 回答日時:
No2です。
>遷移先はリクエストヘッダから取得するのですが、そこのプログラムや仕組みは
>都合上、変更する事ができなくて。
遷移先のプログラムを変更できないなら、この話は最初から無理だと思いますよ。
「あるサイトAで、ログイン操作をすることなく、別サイトBから、そのサイトAにログインしたかのようにデータを送り込む」って、別の言い方をすると、「サイトAに脆弱性があって、その脆弱性を突いて別のサイトBから攻撃する」ってことです。
シングルサインオンは両方のサイトが協調しないと無理です。
この回答への補足
ご回答誠にありがとうございます。また他に回等頂いた皆様もどうもありがとうございます。
cookie、OAuthあたりは、まだよく分かってないのですが、
まずは、XMLHttpRequestを使ってリクエストするのをちょっと試してみました。
-------------------------
<html>
<head>
<link rel="stylesheet" type="text/css" hfef="style.css">
<script>
<!--
var req;
function addHeaderRequest() {
req = new XMLHttpRequest();
req.open("Get", "http://www.yahoo.co.jp/", false);
req.setRequestHeader("Content-Type" , "application/x-www-form-urlencoded");
req.setRequestHeader("dounaru","katsuzo");
req.onreadystatechange = callback;
req.send(null);
}
function callback() {
if (req.readyState == 4) {
if (req.status == 200) {
var myHeader = document.getElementById('myHeader');
myHeader.value = req.responseText;
var tNode = document.createTextNode(req.responseText);
myHeader.appendChild(tNode);
}
}
}
-->
</script>
<title> テスト </title>
</head>
<body>
フィールド名<input type="text" value="aaaaaa" id="addHeaderName" name="addHeaderName">
フィールド値<input type="text" value="111111" id="addHeaderValue" name="addHeaderValue">
<input type="button" value="送信" id="runAjax" name="runAjax" onclick="addHeaderRequest();">
<br>
<!--
<input type="text" readonly id="myHeader" size="50">
-->
リクエストしたヘッダーか:
<span id="myHeader">
</span>
</body>
</html>
-------------------------
これで画面にあるボタンを押すと、応答したのが画面に表示されてるようです。
この時ですが、
・画面遷移(この場合yahooのページに飛ぶ)もしたいのですが、可能なのでしょうか?
・setRequestHeaderで、"dounaru","katsuzo"というのを設定したつもりなのですが、
応答したものには表示されていません。HTTPリクエストヘッダーには設定されたのでしょうか?
(この場合、yahooのサーバーサイドでHTTPリクエストヘッダーの"dounaru","katsuzo"を
読み取れるのでしょうか?)
よろしくお願いします。
No.3
- 回答日時:
>例えばあるサイトにいて、そこでユーザーとパスワードを保持。
クリックなどのイベントで遷移先に飛びます。「あるサイト」があなたの管理下にあるなら、cookieを使うのが楽でしょう。色々なところで使われていますね。ショッピングサイトから銀行やクレジット会社にリンクするときなど
動的なページなら--当然そのはずですが---「あるページ」を出力する段階でset-cookieヘッダで、NAME(必須)、expires、domain、pathで指定しておきます。javascriptなら document.cookie = "~"; ですね。
ちろん、普通にPATH_INFOやQuery_String、標準入力も可能ですがセキュリティの問題からお勧めしません。
<a href="http://hoge.com/cgi-bin/abc/evaan /123456/">次のページ</a>
<form action="http://hoge.com/cgi-bin/abc" method="get | post">いずれか
<input type="submit" value="次のページ"></form>としてスタイルシートで普通のリンクにデザインする。
No.2
- 回答日時:
>シングルサインオンのようなものなのですが。
ああ、HTMLだけで何かしたいと無理なことをいっているのかと思ってました。
サーバーサイドにもプログラムがあるわけですね。
両方が同じドメイン・・・・foo.example.com と bar.example.com・・・・の場合は、普通にCookieが使えます。
全く異なるドメイン・・・・foo.example.comとbar.example.jp・・・・の場合は、OAuthのライブラリとかを使えば良いかと思います。
この回答への補足
すみません。ご回答誠にありがとうございます。
CookieやOAuthのライブラリ は遷移元で設定するのでしょうか?
遷移先はリクエストヘッダから取得するのですが、そこのプログラムや仕組みは
都合上、変更する事ができなくて。
また、例えばXMLHttpRequestなどを使い、そこで遷移先に飛んだりsubmitするような事でも
実現可能でしょうか?
質問が何かおかしかったらすみません。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HTML&CSS 学習本の相談
-
絶対パスと相対パスについて。
-
HTML&CSS 学習方法のお勧め
-
テーブルの行を折りたたみたい...
-
htmlの文字が縦書きになる
-
ホームページを作っていたらhtm...
-
ホームページのサイトでhtm...
-
HTML/CSSを使って写真のような...
-
Affinger6でトップページに記事...
-
HTMLでクロス抽出したい
-
静止画画像をクリックすると音...
-
htmlが簡単に作成できるアプリ...
-
Webサイトの「デザインのみ(コ...
-
HTMLで画像をポップアップで表...
-
HTMLの CSSのファイルというの...
-
初心者html・CSS ウィンドウを...
-
メモ帳の段落の揃え方
-
レスポンシブで困っています・・
-
ホームページの制作について教...
-
GoogleSearchControlにホームペ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ASPで画面間のパラメタ受け渡し
-
アプリの不具合?
-
エクセルVBA 別のブックのユ...
-
ASP.NET による画面遷移で質問...
-
VB.NET 画面遷移
-
【ASP.NET】ページ遷移してもGr...
-
スマホで、左右にスワイプして...
-
POSTだけして、ページの移動を...
-
HTTPリクエストヘッダーの設定...
-
画面遷移が不正ですと表示されます
-
VBAで画面遷移時のパラメータに...
-
Access2013 VBA 複数の画面の遷移
-
VB.NETのWebアプリケーション開...
-
シングルサインオンの方法
-
C#でテキストボックスとスクロ...
-
プログラミング開発の質問です...
-
違うサイトに移動した時にcooki...
-
unityでクイズゲームを作ってい...
-
request.QueryStringについて
-
aspからasp.netへの遷移(その...
おすすめ情報