Silverlight:查询字符串中的URL参数已转义

时间:2013-05-06 20:28:49

标签: silverlight url

Silverlight 5中的

var uri= new Uri("http://www.last.fm/api/auth/?api_key=xyz&cb=http://localhost:19000/callback?bla=blu")
HtmlPage.Window.Navigate(uri);

登陆我的浏览器: http://www.last.fm/api/auth?api_key=xyz&cb=http://localhost:19000/callback%253Fbla=blu

注意“?”回调参数中的URL被转义为%253F - 即使如果我在调试器中查看uri.ToString(),它也不会被转义。

如何防止这种情况发生?

非常感谢, 最大

1 个答案:

答案 0 :(得分:0)

我没有回答,但如果有人遇到同样的问题,这就是我尝试过的以及我最终做的事情:

首先,我尝试使用HtmlPage.Window.Eval()来执行导航到该URL的javascript。再一次,?即使URL.ToString()没有转义它也被转义。

所以我最终做了什么 - 之前可以想到它,真的; P - 是改变我的回调处理程序以遵循类似REST的格式。而不是:

http://localhost:19000/callback?bla=blu

现在听取:

http://localhost:19000/callback/bla=blu

并将参数值从路径中取出。不再涉及问号,问题解决了。