Request.RawUrl vs. Request.Url

后端 未结 5 766
感动是毒
感动是毒 2020-12-13 12:38

What is the difference between Request.RawUrl and Request.Url in ASP.NET?

5条回答
  •  盖世英雄少女心
    2020-12-13 13:17

    No one seems to have mentioned that it shows the Raw URL actually received by IIS, before any manipulation may have happened sending it around IIS or your file system with URL rewriting for example.

    Say you have set an error page at /error in an MVC app and you set your webconfig to replace error pages with your custom error page at that location. In this way when getting an error at /faultypage, the user will get the page at /error but the url in your browser's address bar will still say www.mysite.com/faultypage—this is a transfer, or a rewrite.

    Now on your error controller if you are to take a peek at Request.Url, it will be something like www.mysite.com/error and Request.RawUrl would say (more usefully?) /faultypage which is the user's actual request not the page that is currently being executed.

提交回复
热议问题