我的请求网址为:http://domain.com/some/path%2Fescaped。
我想检索这个确切的网址。我不希望它被解码,如http://domain.com/some/path/escaped;我希望它编码为http://domain.com/some/path%2Fescaped。
如何获取此网址?我已尝试过Request.Path,Request.RawUrl,Request.Url.AbsoluteUri,Request.Url.OriginalString ...每个都提供解码后的网址,如{ {3}}
我可以使用$ _SERVER [“REQUEST_URI”]在PHP中获取此内容。
答案 0 :(得分:0)
我不知道这是否会起作用,但您是否已尝试过Server.URLDecode
或Server.URLEncode
?
答案 1 :(得分:0)
Javascript调用document.location.href应该返回预期的格式。这是一个建议;检查这是否适合您。
1)有一个隐藏变量
<input type="hidden" id="hdn" runat="server" />
2)使用javascript函数设置隐藏变量
function setURL() {
document.getElementById("hdn").value = document.location.href;
}
3)在服务器端
Page.ClientScript.RegisterStartupScript(this.GetType(),
"setURL", "setURL();", true);
4)读取服务器端的隐藏变量值(实际格式的URL)
hdn.Value
答案 2 :(得分:0)
您需要Request.Url.OriginalString;