質問: 短縮アドレスを正規のアドレスに置換する方法について JScriptで転送先のアドレスを取得して置換する方法はどう書けばいけますでしょうか? URLを検査してリダイレクトされる場合は、正規のアドレスに置換する方法です。 事例 正規のアドレス こんな感じです。
回答: JScriptでは、HTTPリクエストをするときXMLHTTPを利用するのが普通ですが、XMLHTTPはリダイレクトに対応できずエラーを吐きます。 したがって、WinHttpという別の(完全に別物ではないです。XMLHTTPの下層にあるらしい)オブジェクトを使います。 という 短縮URLから、リダイレクト先の を取得するとします。 「置換」という言葉が具体的に何を指しているのかわからないので、とりあえず画面にリダイレクト先のURLを表示するようにします。 以下のようになります。 var req = new ActiveXObject("WinHttp.WinHttpRequest.5.1"); req.Open("HEAD", "", false); req.Send(); WScript.Echo(req.GetResponseHeader("location")); HTTPリダイレクトでは、応答ヘッダ中のlocationヘッダの文字列がリダイレクト先のURLを指定するので、.GetResponseHeader("location")で取り出して表示しています。 また、応答ヘッダさえ手に入ればいいので、GETリクエストではなくHEADリクエストを投げることにしました。