苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 10353|回复: 10

[其他] 求助 httpwebrequest 请求时 url 地址 编码问题

[复制链接]
发表于 2013-7-22 23:36:34 | 显示全部楼层 |阅读模式
在用httpwebrequest 访问网址时,如果原本要访问的地址是这样的:“http://a.zc.qq.com/Cgi-bin/MoniKey?56|5|1374531881296”,
但是请求时候 我抓包,抓到的软件get的地址却是:“http://a.zc.qq.com/Cgi-bin/MoniKey?56%7C5%7C1374531881296”,
对比看下,是对“|”这个符号进行了编码,如何避免这种编码 保持原地址不变?

急求!!!!


1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2013-7-23 08:07:23 | 显示全部楼层
[code=csharp] public static string URLDecode(string text)
        {
            return HttpUtility.UrlDecode(text, Encoding.Default);
        }
        public static string URLEncode(string text)
        {
            return HttpUtility.UrlEncode(text, Encoding.Default);
        }[/code]
 楼主| 发表于 2013-7-23 09:08:47 | 显示全部楼层

使用这个“HttpUtility”需要引用什么吗 我的vs2010里 找不到这个

已经引用了System.Web 了,还是找不到 直接写 提示 上下文不存在名称“HttpUtility”
发表于 2013-7-23 09:14:32 | 显示全部楼层
System.Web 是添加引用,不是引用命名空间,要添加引用
 楼主| 发表于 2013-7-23 09:47:55 | 显示全部楼层
本帖最后由 7次方软件 于 2013-7-23 09:50 编辑
站长苏飞 发表于 2013-7-23 09:14
System.Web 是添加引用,不是引用命名空间,要添加引用


HttpUtility 搞定了 不过这个还是不行啊 这个是编码的啊 我想要的是 不要编码 我给个什么样的地址 就去请求什么样的地址 ,也就是如何不对URL地址中的这个符号“|”编码 是不编码  

飞哥 用这个地址“http://a.zc.qq.com/Cgi-bin/MoniKey?56|5|1374531881296”试试吧? 目的就是 软件真实请求的地址还是这个,不对其中的“|”这个字符编码
发表于 2013-7-23 09:59:20 | 显示全部楼层
那是抓包软件自动转的,或者是浏览器自动转的,你不转有时候是无法识别的。
 楼主| 发表于 2013-7-23 10:01:14 | 显示全部楼层
站长苏飞 发表于 2013-7-23 09:14
System.Web 是添加引用,不是引用命名空间,要添加引用

还有个问题就是 为什么他只对“|”这一个字符编码了呢? 这个请求地址中其他的符号比如 "?","&"怎么就没编码呢
 楼主| 发表于 2013-7-23 10:03:55 | 显示全部楼层
本帖最后由 7次方软件 于 2013-7-23 10:05 编辑
站长苏飞 发表于 2013-7-23 09:59
那是抓包软件自动转的,或者是浏览器自动转的,你不转有时候是无法识别的。


不是额 我在浏览器中手动的访问网页,网页会自动请求这样的地址,然后用抓包软件抓到的请求地址中 “|”这个符号是没有编码的,显示的是原请求地址,没进行编码 这应该说 不是抓包软件的问题吧
发表于 2013-7-23 10:11:45 | 显示全部楼层
7次方软件 发表于 2013-7-23 10:03
不是额 我在浏览器中手动的访问网页,网页会自动请求这样的地址,然后用抓包软件抓到的请求地址中 “| ...

这些都是自动的,你只需要在使用时使用上面的方法进行转化就不行,没必要纠结这个问题吧,
有的会自动转有的不会。
有些是JS自动转化的。
如果你自己的网站你做处理就是了,如果是别人的网站你也左右不了。在使用的时候自己转化一下就行。楼主真没必要纠结这个问题,你要知道有些字符不转是会乱码的。比较中文

 楼主| 发表于 2013-7-23 11:34:08 | 显示全部楼层
站长苏飞 发表于 2013-7-23 10:11
这些都是自动的,你只需要在使用时使用上面的方法进行转化就不行,没必要纠结这个问题吧,
有的会自动转 ...

不是我纠结这个 是 如果"|"字符编码成"%7c"请求过去了,最后得不到我要的结果~~
用winhttp对象解决了最后
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-12-27 05:12

© 2014-2021

快速回复 返回顶部 返回列表