:
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(),它也不会被转义。
如何防止这种情况发生?
非常感谢, 最大
答案 0 :(得分:0)
我没有回答,但如果有人遇到同样的问题,这就是我尝试过的以及我最终做的事情:
首先,我尝试使用HtmlPage.Window.Eval()来执行导航到该URL的javascript。再一次,?即使URL.ToString()没有转义它也被转义。
所以我最终做了什么 - 之前可以想到它,真的; P - 是改变我的回调处理程序以遵循类似REST的格式。而不是:
http://localhost:19000/callback?bla=blu
现在听取:
http://localhost:19000/callback/bla=blu
并将参数值从路径中取出。不再涉及问号,问题解决了。