c# 获取带特殊字符的url 参数
正常情况下c#获取url中参数用Request.QueryString["id"]这种方法可以获得。但是url中带有特殊字符,获取的值为空,请问怎么获取带特殊字符的url...
正常情况下c# 获取url中参数用Request.QueryString["id"]这种方法可以获得。但是url中带有特殊字符,获取的值为空,请问怎么获取带特殊字符的url中的参数。
例:下面的url中“#“ 后面的参数就获取不到 http://huitaichufang.com/qqdll.aspx?#access_token=67606634F576ECB65C2FF2A8CE9F8AE0&expires_in=7776000 展开
例:下面的url中“#“ 后面的参数就获取不到 http://huitaichufang.com/qqdll.aspx?#access_token=67606634F576ECB65C2FF2A8CE9F8AE0&expires_in=7776000 展开
展开全部
这个不是特殊字符,
[STAThread]
public static void Main(string[] args)
{
var url = @"http://huitaichufang.com/qqdll.aspx?#access_token=67606634F576ECB65C2FF2A8CE9F8AE0&expires_in=7776000";
var uri = new Uri(url);
var fragment = uri.Fragment;
Console.WriteLine("fragment:" + fragment);
if (fragment.StartsWith("#"))
fragment = fragment.Substring(1);
// using System.Web;
var collection = HttpUtility.ParseQueryString(fragment);
foreach (var key in collection.AllKeys)
{
Console.WriteLine(key + " => " + collection[key]);
}
Console.ReadKey();
}
展开全部
特殊符号可用对应的编码代替,如#号用%23,以下为常用特殊符号:
+ %2B
空格 %20
/ %2F
? %3F
% %25
# %23
& %26
= %3D
+ %2B
空格 %20
/ %2F
? %3F
% %25
# %23
& %26
= %3D
追问
关键这这个url是接收的qq返回的url。怎么编码?
追答
那你把QQ返回的URL中的#号给删除了 ,或者替换掉。再request试试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你是想做qq第三方登录吗?
追问
嗯,是的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询