@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

Request.ServerVariables変数設定方法

1
投稿者投稿内容
theaterdream
会議室デビュー日: 2007/07/12
投稿数: 4
投稿日時: 2007-07-12 17:13
ASPをよく理解していないのですが、
Request.ServerVariables("HTTP_TESTVALUE")
で値を取得して欲しいと言われました。
別サイトからHTTP_TESTVALUEという環境変数を作成し、ユーザーアカウントをセットして送ってくれるようです。
そのように作ったのはいいのですが、ちゃんと取得できるかテストしようとしたときに、独自環境変数HTTP_TESTVALUEをどのように追加すればいいのかわかりません。

Response.AddHeader "TESTVALUE","LoginUserName"
で、いけそうな気がするのですが、どうもうまく取得?受渡しできません。
どこに記述すればいいのか?そもそも間違っているのか分かりません。
ご教授ください。

今は↓のような処理にしています・・・
*****test.asp(呼び元)*****
<%
Response.AddHeader "TESTVALUE","LoginUserName"
Response.Redirect "login.asp"
%>

*****login.asp(受け先)*****
<%
Dim aaa
aaa = Request.ServerVariables("HTTP_TESTVALUE")
'以下ログイン処理・・・
%>
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2007-07-12 18:50
引用:
Request.ServerVariables("HTTP_TESTVALUE")
で値を取得して欲しいと言われました。
別サイトからHTTP_TESTVALUEという環境変数を作成し、ユーザーアカウントをセットして送ってくれるようです。

要するにクライアントはTESTVALUEというHTTPヘッダにユーザーアカウントを
セットしてアクセスしてくるということですかね。

引用:
今は↓のような処理にしています・・・
*****test.asp(呼び元)*****
<%
Response.AddHeader "TESTVALUE","LoginUserName"
Response.Redirect "login.asp"
%>

*****login.asp(受け先)*****
<%
Dim aaa
aaa = Request.ServerVariables("HTTP_TESTVALUE")
'以下ログイン処理・・・
%>

これだと、
1、クライアント(普段はブラウザ)がtest.aspにリクエスト
2、test.aspはlogin.aspにリクエストするよう指示
3、ブラウザが自動的にlogin.aspにリクエスト
という処理手順になりますよね。
2のレスポンス時にはTESTVALUEが付加されていますが3の時には付加されていません。

ASPでどうやるかはわかりませんが、ブラウザの代わりとなるロジックを作らないとテストできないでしょう。
(リダイレクト時に特定のHTTPヘッダを付加するようにサーバー側から指示するような
HTTPヘッダがあれば別ですが調べてません)

ASP.NETであればHttpWebRequestとかを使うんですけどね。
theaterdream
会議室デビュー日: 2007/07/12
投稿数: 4
投稿日時: 2007-07-12 19:45
引用:

要するにクライアントはTESTVALUEというHTTPヘッダにユーザーアカウントを
セットしてアクセスしてくるということですかね。


そういうことですね。。


引用:

これだと、
1、クライアント(普段はブラウザ)がtest.aspにリクエスト
2、test.aspはlogin.aspにリクエストするよう指示
3、ブラウザが自動的にlogin.aspにリクエスト
という処理手順になりますよね。
2のレスポンス時にはTESTVALUEが付加されていますが3の時には付加されていません。


そうですね。色々調べているうちにコレでは、おかしいと思いました。
要するにクライアント側からヘッダー情報をセットしてサーバーに送らないといけないのですね・・・。
まあそれがわからないのですが・・・。

引用:

(リダイレクト時に特定のHTTPヘッダを付加するようにサーバー側から指示するような
HTTPヘッダがあれば別ですが調べてません)


それが、あればいいんですが。

引用:

ASP.NETであればHttpWebRequestとかを使うんですけどね。


私はASP.NETも詳しくないですが、調べて見ます。
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2007-07-12 20:13
Fiddler辺りのツールで任意ヘッダの追加は出来なかったですかね?
ちょっと思い出せませんが…
theaterdream
会議室デビュー日: 2007/07/12
投稿数: 4
投稿日時: 2007-07-12 20:26
英語のツールだと使いこなせる自身がありません・・・
しかし情報ありがとうございます!
todo
ぬし
会議室デビュー日: 2003/07/23
投稿数: 682
投稿日時: 2007-07-12 21:12
テストロジックは WSH + MSXML2.XMLHTTP で作れるとおもいます。
あるいは、telnetでリクエストをじか打ちするとか。

引用:

別サイトからHTTP_TESTVALUEという環境変数を作成し、ユーザーアカウントをセットして送ってくれるようです。



別サイトがASPにリクエストを送るのでしょうか?
ブラウザが独自環境変数を付けてリクエストを送るのでしょうか?

私の知識では後者は不可能だと思いますが、できるのであれば方法を教えていただきたい。
theaterdream
会議室デビュー日: 2007/07/12
投稿数: 4
投稿日時: 2007-07-12 21:36
引用:

テストロジックは WSH + MSXML2.XMLHTTP で作れるとおもいます。
あるいは、telnetでリクエストをじか打ちするとか。


なるほど。
少ししか調べていませんが、WSH + MSXML2.XMLHTTPで出来そうな気がします・・・


引用:

私の知識では後者は不可能だと思いますが、できるのであれば方法を教えていただきたい。


今回のものは前者だと思います。
詳しいことは分かりませんが、別のサーバーを経由して、こっちのサイトにアクセスしてくるようですので、そのサーバーが付加してくるのだと思います。
1

スキルアップ/キャリアアップ(JOB@IT)