导读部分
【HttpHelper万能框架】教程目录贴 http://www.sufeinet.com/thread-9989-1-1.html
教程部分
我们在做登录时经常会碰到中文用户名,不可以登录,英文用户名可以登录的情况。
这种情况我们只需要将Url参数转码就可以了。
方法也很简单看下面代码
[C#] 纯文本查看 复制代码 string parameters = "a=123456&b=456789&c=456456";
//使用指定的编码对象对 URL 字符串进行编码。
string URLEncode = HttpHelper.URLEncode(parameters);
//使用指定的编码对象将 URL 编码的字符串转换为已解码的字符串。
string URLDecode = HttpHelper.URLDecode(URLEncode);
Response.Write(string.Format("<br/><br/>URLEncode={0}<br/>URLDecode={1}<br/>", URLEncode, URLDecode));
//使用指定的编码对象对 URL 字符串进行编码。
URLEncode = HttpHelper.URLEncode(parameters, System.Text.Encoding.UTF8);
//使用指定的编码对象将 URL 编码的字符串转换为已解码的字符串。
URLDecode = HttpHelper.URLDecode(URLEncode, System.Text.Encoding.UTF8);
Response.Write(string.Format("<br/><br/>URLEncode={0}<br/>URLDecode={1}<br/>", URLEncode, URLDecode));
运行结果
[C#] 纯文本查看 复制代码 URLEncode=a%3d123456%26b%3d456789%26c%3d456456
URLDecode=a=123456&b=456789&c=456456
URLEncode=a%3d123456%26b%3d456789%26c%3d456456
URLDecode=a=123456&b=456789&c=456456
下面是一个例子大家一起来看看
比如我们要获取 淘宝的店铺信息
http://member1.taobao.com/member/user_profile.jhtml?user_id= hanwei
http://member1.taobao.com/member/user_profile.jhtml?user_id= 欧影点点
如果我们直接请求上面两个链接。第一个是可以正常返回数据的,但是第二个就不行了,因为出现的中文需要我们转化才可以。
使用万能框架代码如下
[C#] 纯文本查看 复制代码 //创建Httphelper对象
HttpHelper http = new HttpHelper();
string url = "http://member1.taobao.com/member/user_profile.jhtml?user_id="+HttpHelper.URLEncode("欧影点点");
//创建Httphelper参数对象
HttpItem item = new HttpItem()
{
URL =url,//URL 必需项
Method = "get",//URL 可选项 默认为Get
ContentType = "text/html",//返回类型 可选项有默认值
};
//请求的返回值对象
HttpResult result = http.GetHtml(item);
//获取请请求的Html
string html = result.Html;
//获取请求的Cookie
string cookie = result.Cookie;
|