http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

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

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

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

查看: 4802|回复: 9

[反馈建议] Httphelp 类 返回result.html问题

[复制链接]
发表于 2014-9-11 12:37:36 | 显示全部楼层 |阅读模式
Httphelp 类 返回result.html问题:网页里面本来有+ ,但是返回的直接变成空格了 ,求解决。。。。


1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2014-9-11 13:06:09 | 显示全部楼层
再换回来,不可以吗?
发表于 2014-9-11 13:18:01 | 显示全部楼层
这个是系统自动转的,和我的类没有关系吧。你去百度一下+号在字符串里的格式,也就是网页的格式,然后自己转化一下就行了。
 楼主| 发表于 2014-9-11 15:17:54 | 显示全部楼层
怎么转化呢?
发表于 2014-9-11 15:20:37 | 显示全部楼层
客户端向服务器传递参数时,参数中的“+”全部变成了空格,原因是URL中默认的将“+”号转义了。
解决方法如下:
方法一、修改客户端,将客户端带“+”的参数中的“+”全部替换为‍“2B%”,这样参数传到服务器端时就能得到“+”了。
方法二、修改服务器端,将空格替换为“+”,这种方式只适用于参数中有‍“+”没有空格的情况。
例子:
String a = reuqest.‍getParameter("clientStr")‍.replace(' ','+');
如果客户端为clientStr=test+OK,那么a的值为test+OK;
方法三、修改服务器端,将获取参数的方法由‍reuqest.‍getParameter改为‍request.getQueryString().substring(0),然后对得到的字符串进行解析。
例子:
‍‍String a =request.getQueryString().substring(0);
‍如果客户端为clientStr=test+OK,那么a的值为‍clientStr=test+OK,需要再解析一下,
a=a.‍substring(10);得到a的值为‍test+OK。
附:一个JS,用来转义URL中特殊字符的。
‍function URLencode(sStr)
{
    return escape(sStr).replace(/\+/g, '+').replace(/\"/g,'"').replace(/\'/g, ''').replace(/\//g,'/');
}

还一种方案
strURL = "search.do?param=" + encodeURIComponent(str);


普通的传参出现乱码问题,可使用encodeURI来转译,它会转译成UTF-8的格式;
strURL = "search.do?param=" + encodeURI(str);

 楼主| 发表于 2014-9-11 15:24:06 | 显示全部楼层
多谢
回复

使用道具 举报

发表于 2014-9-11 15:28:42 | 显示全部楼层

不客气,回复的时候单击我下面的回复,这样才是回复我,参考这里http://www.sufeinet.com/thread-5175-1-1.html
 楼主| 发表于 2014-9-11 15:37:11 | 显示全部楼层
站长苏飞 发表于 2014-9-11 15:28
不客气,回复的时候单击我下面的回复,这样才是回复我,参考这里http://www.sufeinet.com/thread-5175-1- ...

感谢您的无私奉献,真是帮了我的大忙了
发表于 2014-9-11 18:22:19 | 显示全部楼层
我只是路过打酱油的。
发表于 2014-9-16 13:49:57 | 显示全部楼层
我只是路过打酱油的。
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

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

GMT+8, 2024-11-22 20:48

© 2014-2021

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