手机网站是asp.net c#编写的,前几天因为要使用微信SDK在手机网站页面使用分享功能,但是程序使用了伪静态功能。如果原地址是:http://ww.xx.com/news/show.aspx?id=233。转化过的伪静态地址为http://ww.xx.com/news/show-233.aspx。sdk签名中需要使用使用获得浏览器的动态网址为加入算法作为签名,试了好几种方法都不行。最后找到解决方法,可以使用Request.RawUrl获得伪静态的页面地址。如果大家有更好的方法也可以说下
测试如下:
测试的url地址是http://www.test.com/testweb/default.aspx?id=1, 结果如下:
Request.ApplicationPath: /testweb
Request.CurrentExecutionFilePath: /testweb/default.aspx
Request.FilePath: /testweb/default.aspx
Request.Path: /testweb/default.aspx
Request.PathInfo:
Request.PhysicalApplicationPath: E:\WWW\testweb\
Request.PhysicalPath: E:\WWW\testweb\default.aspx
Request.RawUrl: /testweb/default.aspx?id=1
Request.Url.AbsolutePath: /testweb/default.aspx
Request.Url.AbsoluteUri: http://www.test.com/testweb/default.aspx?id=1
Request.Url.Host: www.test.com
Request.Url.LocalPath: /testweb/default.aspx