苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

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

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

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

查看: 5035|回复: 9

[求助] 遇到使用httphelper类的问题,请问如何解决?

[复制链接]
发表于 2014-1-8 11:41:44 | 显示全部楼层 |阅读模式
程序通过httphelper获得了一个网页的全部内容,我想通过POST方式将得到的网页内容传到另外一张网页上接收,现在程序提供500错误,我将主要代码附上,请大大们帮忙指点一下。           static void Main(string[] args)
        {
            string Bz1=null;            
            HttpWebRequest myreq = (HttpWebRequest)WebRequest.Create("http://XXXXXXX.aspx");
             Bz1 = WebResponseGet(myreq);
            HttpHelper http = new HttpHelper();

            HttpItem item = new HttpItem()
            {
                URL = "http://localhost:55850/exchange.aspx",
                Method = "POST",
                Encoding = null,
                Postdata = "bz1="+Bz1+"id=1&fs=u",
                ContentType = "application/x-www-form-urlencoded;charset=gb2312",
                PostDataType=PostDataType.Byte,

            };


            HttpResult result = http.GetHtml(item);
            result = http.GetHtml(item);
            Console.WriteLine(result.Html);
            Console.ReadLine();

        }
        public static string WebResponseGet(HttpWebRequest webRequest)
        {
            StreamReader responseReader = null;
            string responseData = null;
            try
            {
                responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream());
                responseData = responseReader.ReadToEnd();
            }
            catch
            {
                return "页面无响应";
            }
            finally
            {
                webRequest.GetResponse().GetResponseStream().Close();
                responseReader.Close();
                responseReader = null;
            }
            return responseData;

        }





1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
 楼主| 发表于 2014-1-8 12:03:12 | 显示全部楼层
网页接收通过request.form
发表于 2014-1-8 12:03:42 | 显示全部楼层
出现500说是是接收端出了问题而不是发送端,你看看是不是因为传过去的参考解析时出的错
 楼主| 发表于 2014-1-8 12:07:31 | 显示全部楼层
站长苏飞 发表于 2014-1-8 12:03
出现500说是是接收端出了问题而不是发送端,你看看是不是因为传过去的参考解析时出的错

应该不是接收端问题,我在本地调试的,还没有接收就提供错误了。
远程服务器返回错误:(500)内部服务器错误。
 楼主| 发表于 2014-1-8 12:11:18 | 显示全部楼层
站长苏飞 发表于 2014-1-8 12:03
出现500说是是接收端出了问题而不是发送端,你看看是不是因为传过去的参考解析时出的错

接收端就写了句
string s =request.Form["字段"].toString();
Response.write(s);
 楼主| 发表于 2014-1-8 12:19:45 | 显示全部楼层
站长苏飞 发表于 2014-1-8 12:03
出现500说是是接收端出了问题而不是发送端,你看看是不是因为传过去的参考解析时出的错

POST内容不是网页都可以的,就是网页的内容时就报错了
发表于 2014-1-8 12:22:52 | 显示全部楼层
把form去掉试试,肯定是服务端问题,不是逗提示你了吗,服务端异常,
 楼主| 发表于 2014-1-8 12:35:59 | 显示全部楼层
站长苏飞 发表于 2014-1-8 12:22
把form去掉试试,肯定是服务端问题,不是逗提示你了吗,服务端异常,

form去掉也一样,我传大数据的JSON也可以的,就是一张网页的内容就不行了。
发表于 2014-1-8 13:10:38 | 显示全部楼层
Xenonum 发表于 2014-1-8 12:35
form去掉也一样,我传大数据的JSON也可以的,就是一张网页的内容就不行了。

你调试一下吧,我确定是接收端的问题,或者是说你传的参数的问题,应该是你传的Html里面带有非法字符,没有转化,或者你把字符串先转化成Unicode试试,你直接在接收端开启调试看一下就知道是执行到什么地方出错了
 楼主| 发表于 2014-1-17 10:24:41 | 显示全部楼层
站长苏飞 发表于 2014-1-8 13:10
你调试一下吧,我确定是接收端的问题,或者是说你传的参数的问题,应该是你传的Html里面带有非法字符,没 ...

已经解决了 是我POST端往接收端传同一个值两次造成的。非常感谢。
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

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

GMT+8, 2024-12-23 15:29

© 2014-2021

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