用.net获取重定向之后的地址

Response.redirect 重定向就是向客户端的浏览器发送一个特殊的HTTP报头:
HTTP/1.1     302     Object     Moved   
Location    http://redirecturl
浏览器读到此报头,就按Location值的指示载入页面.所以,获取重定向后的URL也就是获取HTTP头的Location值.
c#版
using System.Net;          
 HttpWebRequest myHttpWebRequest = (HttpWebRequest)HttpWebRequest.Create("http://tuangai.com/group/40926.html");
            myHttpWebRequest.AllowAutoRedirect = false;
            HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
            MessageBox.Show(myHttpWebResponse.Headers.Get("Location"));

vb.net版
  '创建一个HttpWebRequest对象
Dim myHttpWebRequest As HttpWebRequest = HttpWebRequest.Create(sRedirectUrl)
         '禁止自动响应重定向
         myHttpWebRequest.AllowAutoRedirect = False
         '创建一个HttpWebResponse对象
Dim myHttpWebResponse As HttpWebResponse = myHttpWebRequest.GetResponse() '同步方式获取
         '获得重定向地址
         MessageBox.Show(myHttpWebResponse.Headers("Location")) '获取HTTP报头的Location值


你可能感兴趣的:(asp.net,winForm)