zoukankan      html  css  js  c++  java
  • 【ASP.NET】如何跳转到上一个页面

    当用户浏览网页的时候会在某个地方需要用户登陆才能继续浏览,用户登陆之后会自动跳转到刚刚浏览的页面。这个步骤是怎么实现的呢?net小伙在查阅相关资料实践之后终于明白了,其实很简单,先分享给大家吧。

      当用户在浏览一个页面的时候,如果需要登录,就在此页面记录当前的URL,然后传到都登录页面,登录成功之后,通过接收的值返回到上一个页面。这里有两种方法:

      ①:通过页面传值的方法

        先获取当前页面的URL:string  url = Request.UrlReferrer;

        通过代码进行传值:Response.Redirect( "/login.aspx?url= "+System.Web.HttpUtility.UrlEncode(url)); 

        登录成功之后加上:Response.Redirect(System.Web.HttpUtility.UrlDecode(Request.QueryString[ "url "].ToString()));

        完成上面的步骤就可以实现跳转上一个页面了。

      ②:通过设置Session的值来实现此功能:

        同样先获取当前页面的URL:string  url = Request.UrlReferrer;

        然后设置Session的值:Session["url"] = url;

        登录成功之后加上:Response.Redirect(System.Web.HttpUtility.UrlDecode(Session["url"].ToString()));

     

    设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli 
    "http://"是协议名 
    "www.jb51.net"是域名 
    "aaa"是站点名 
    "bbb.aspx"是页面名(文件名) 
    "id=5&name=kelli"是参数 
    【1】获取 完整url (协议名+域名+站点名+文件名+参数)

    代码如下:

    string url=Request.Url.ToString(); 
    url= http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli


    【2】获取 站点名+页面名+参数:

    代码如下:

    string url=Request.RawUrl; 
    (或 string url=Request.Url.PathAndQuery;) 
    url= /aaa/bbb.aspx?id=5&name=kelli


    【3】获取 站点名+页面名:

     代码如下:

    string url=HttpContext.Current.Request.Url.AbsolutePath; 
    (或 string url= HttpContext.Current.Request.Path;) 
    url= aaa/bbb.aspx


    【4】获取 域名:

    代码如下:

    string url=HttpContext.Current.Request.Url.Host; 
    url= www.jb51.net


    【5】获取 参数:

    代码如下:

    string url= HttpContext.Current.Request.Url.Query; 
    url= ?id=5&name=kelli
     代码如下:

    Request.RawUrl:获取客户端请求的URL信息(不包括主机和端口)------>/Default2.aspx 
    Request.ApplicationPath:获取服务器上ASP.NET应用程序的虚拟路径。------>/ 
    Request.CurrentExecutionFilePath:获取当前请求的虚拟路径。------>/Default2.aspx 
    Request.Path:获取当前请求的虚拟路径。------>/Default2.aspx 
    Request.PathInfo:取具有URL扩展名的资源的附加路径信息------> 
    Request.PhysicalPath:获取与请求的URL相对应的物理文件系统路径。------>E:\temp\Default2.aspx 
    Request.Url.LocalPath:------>/Default2.aspx 
    Request.Url.AbsoluteUri:------>http://localhost:8080/Default2.aspx 
    Request.Url.AbsolutePath:---------------------------->/Default2.aspx

     

    乌龟才背着房子过一辈子
  • 相关阅读:
    python类库31[正则表达式匹配实例]
    Mysql百万级数据迁移实战笔记
    面试官:一千万数据,怎么快速查询?
    为什么MySQL不建议使用NULL作为列默认值?
    Redis各个数据类型最大存储量
    Rabbitmq延迟队列实现定时任务
    PHPstorm批量修改文件换行符CRLF为LF
    使用SeasLog打造高性能日志系统
    协程编程注意事项
    Rabbitmq 安装过程中常见问题(亲测可行)
  • 原文地址:https://www.cnblogs.com/Yellowshorts/p/2811025.html
Copyright © 2011-2022 走看看