苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

HttpHelper万能框架(V2.3-含.netcore) HttpHelper官方出品,无敌框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 最牛的爬虫类,没有爬不到只有想不到 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 8813|回复: 20

[更新] 核心更新:Httphelper万能框架新增异步调用方法

[复制链接]
发表于 2017-5-18 14:36:51 | 显示全部楼层 |阅读模式
核心更新:Httphelper万能框架新增异步调用方法



讨论区http://www.sufeinet.com/forum-169-1.html  

教程:http://httphelper.sufeinet.com/Course.aspx

例子http://httphelper.sufeinet.com/demo.aspx

源码下载http://www.sufeinet.com/thread-9926-1-1.html


购买年费会员,终身VIP,都可直接下载源码,框架购买链接
http://www.sufeinet.com/plugin.php?id=qmx8_buy_usergroup:vip


使用方法如下

   首先要引用命名空间
[C#] 纯文本查看 复制代码
using CsharpHttpHelper.Enum;
using CsharpHttpHelper;


然后以Get本站为例子代码如下

[C#] 纯文本查看 复制代码
            //创建Httphelper对象
            HttpHelper http = new HttpHelper();
            //创建Httphelper参数对象
            HttpItem item = new HttpItem()
            {
                URL = "http://www.sufeinet.com"//URL     必需项    
            };
            //开始异步调用
            http.BeginInvokeGetHtml(item, new ResultHandler(SetHtml));


异步调用所用的方法如下
[C#] 纯文本查看 复制代码
        /// <summary>
        /// 在异步执行完成后要回调的方法
        /// </summary>
        /// <param name="result"></param>
        public void SetHtml(HttpResult result)
        {
            //获取请请求的Html
            string html = result.Html;
            //获取请求的Cookie
            string cookie = result.Cookie;

            //状态码
            HttpStatusCode code = result.StatusCode;
            //状态描述
            string Des = result.StatusDescription;
            if (code == HttpStatusCode.OK)
            {
                //状态为200
            }
        }


完整代码

[C#] 纯文本查看 复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using CsharpHttpHelper;
using System.Net;
using System.Text;
using CsharpHttpHelper.Enum;

namespace CsharpHttpHelper_Demo
{
    public partial class HttpGet_Demo : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //创建Httphelper对象
            HttpHelper http = new HttpHelper();
            //创建Httphelper参数对象
            HttpItem item = new HttpItem()
            {
                URL = "http://www.sufeinet.com"//URL     必需项    
            };
            //开始异步调用
            http.BeginInvokeGetHtml(item, new ResultHandler(SetHtml));
          
        }
        /// <summary>
        /// 在异步执行完成后要回调的方法
        /// </summary>
        /// <param name="result"></param>
        public void SetHtml(HttpResult result)
        {
            //获取请请求的Html
            string html = result.Html;
            //获取请求的Cookie
            string cookie = result.Cookie;

            //状态码
            HttpStatusCode code = result.StatusCode;
            //状态描述
            string Des = result.StatusDescription;
            if (code == HttpStatusCode.OK)
            {
                //状态为200
            }
        }
    }
}

好了使用方法还是比较简单的,大家赶紧下载使用吧。



本帖被以下淘专辑推荐:

发表于 2017-5-18 15:27:34 | 显示全部楼层
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2017-5-18 14:53:17 | 显示全部楼层
从此Httphelper也走上了可以回调方法的路,
而不需要每次都 等待执行完成才能继续业务逻辑。

异步调用,说白了就是可以回调方法,不需要等待gethtml方法执行完,可以继续业务逻辑,等执行完成会自动调用你指定的一个方法


发表于 2017-5-18 15:11:32 | 显示全部楼层
不错不错,不过暂时想不到什么地方需要这种异步获取html的。。。
 楼主| 发表于 2017-5-18 15:14:17 | 显示全部楼层
MeeSii 发表于 2017-5-18 15:11
不错不错,不过暂时想不到什么地方需要这种异步获取html的。。。

有需求了自然就有用了
发表于 2017-5-18 15:23:13 | 显示全部楼层
发表于 2017-5-18 16:07:09 | 显示全部楼层
希望老大有时间的时候把 put  delete head 等 http协议请求方法加上,用习惯了httphelper,在用网上的其他代码非常不习惯
 楼主| 发表于 2017-5-18 16:13:22 | 显示全部楼层
sea124 发表于 2017-5-18 16:07
希望老大有时间的时候把 put  delete head 等 http协议请求方法加上,用习惯了httphelper,在用网上的其他代 ...

现在是没有限制的你可以直接指定的。 put  delete head 简单的请求都不影响使用,和Post,GET一样的用法
发表于 2017-5-22 11:01:34 | 显示全部楼层
发表于 2017-6-11 14:39:28 | 显示全部楼层
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

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

GMT+8, 2019-10-21 18:09

© 2017-2018

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