开源代码:Http请求封装类库HttpLib介绍、使用说明

今天介绍一个很好用的Http请求类库--Httplib。一直以来,我们都是为了一次web请求,单独写一段代码

有了这个类,我们就可以很方便的直接使用了。

项目介绍:

http://www。suchso。com/UIweb/jquery-Plupload-use.html

基于C#语言,Httplib让异步交互处理数据更容易了。类库的方法包括:上传文件到服务器,获取页面数据。

该项目专门为web服务写的,如果你打算重新写一个http客户端和服务端的话,建议你使用wcf。

最新代码下载:http://jthorne.co.uk/blog/httplib/building-a-windows-store-class-library-for-httplib/

支持的方法有:

  • GET
  • POST
  • PUT
  • HEAD
  • DELETE
  • Upload - PUT or POST

用法:

引用dll

using Redslide.HttpLib

从web服务获取数据

Request.Get("http://jthorne.co.uk/",
result=>
{
    Console.Write(result);
});

从服务器下载数据

Request.Get("http://cachefly.cachefly.net/100mb.test",
(headers, result) =>
{
        FileStream fs = new FileStream(@"C:\100mb.test", FileMode.OpenOrCreate);
        result.CopyTo(fs);
        fs.Close();
});

Post数据给web服务

Request.Post("http://testing.local/post.php", new {name="james",username="Redslide"},
result=>
{
    Console.Write(result);
});

Post数据给web服务,并且捕获异常

Request.Post("http://testing.local/post.php", new { name = "value"},
result=>
{
    Console.Write(result);
},
e=>
{
    Console.Write(e.ToString());
});

上传文件到服务器

Request.Upload("http://testing.local/post.php", new {name = "value"}, new[] {
    new NamedFileStream("file", "photo.jpg", "image/jpeg", new FileStream(@"C:\photo.jpg",FileMode.Open))
},
result=>
{
    Console.Write(result);
});

用起来还是很简单的。这样分装好的类库,大大的减少了我们的工作量,并且因为有团队维护和很好的异常处理,

减少bug的产生。当然你要是不放心,你可以阅读源代码,重新编译。源代码下载地址:http://httplib.codeplex.com/SourceControl/latest

时间: 2024-10-26 15:58:05

开源代码:Http请求封装类库HttpLib介绍、使用说明的相关文章

安卓OKhttp请求封装

目前安卓开发中使用的网络工具为OKhttp,但是okhttp的使用还不是很方便,在okhttp的基础上再对请求进行封装会极大的方便网络调用. 下面直接上代码. 请求封装 public class HttpUtil { public static void sendOKHttpRequest(String address, Map<String,String> head,Map<String,String> body,okhttp3.Callback callback){ OkHtt

最新最全的Cleanflight 无人机开源代码的系统列介绍

Cleanflight can be used on multirotor aircraft and fixed-wing aircraft, it supports a variety for shapes and motor counts, not limited to quadcopters, hexacopters, octocopters, tricopters and planes. Cleanflight is Open-Source flight controller softw

PHP爬虫(3)PHP DOM开源代码里的大坑和字符编码

一.开源代码的问题 在PHP爬虫(2)中介绍了开源工程Sunra.PhpSimple.HtmlDomParser.在实际工作中发现一个问题,例如http://www.163.com的网页数据怎么也抓取不下来. $url = "http://www.163.com"; $content = Http::request($url); $dom = str_get_html($content);//dom返回值为false 检查simple_html_dom.php代码发现, if (emp

基于请求响应的简单介绍

Http请求响应过程: Http是基于TCP/IP之上的协议. 基本流程: 浏览器      -------请求行/请求头/请求体---------> Web服务器 --> 应用代码(servlet/JSP/.html) <----- 响应状态/响应头/响应体----- 请求行: GET/POST URL?querystring请求头: Content-Length/Connection/User-Agent/Accept-Language/Referer/Cookie/Host...请

CWMP开源代码研究5——CWMP程序设计思想

声明:本文涉及的开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅号:408797506) 本文介绍自己用过的ACS,其中包括开源版(提供下载包)和商业版(仅提供安装包下载,没有源码) 参考: 1) http://www.docin.com/p-1306443672.html 2) http://www.easycwmp.org/ 一. 背景   程序设计的思想来自于easycwmp官网,看过或者用过easycwmp的工程师应该都知道,该开源代码还有商业版,而且价格不

Retrofit – Java(Android) 的REST 接口封装类库

Retrofit 和Java领域的ORM概念类似, ORM把结构化数据转换为Java对象,而Retrofit 把REST API返回的数据转化为Java对象方便操作.同时还封装了网络代码的调用. 例如: public interface GitHubService { @GET("/users/{user}/repos") List<Repo> listRepos(@Path("user") String user); } 定义上面的一个REST API

C++设计模式类库 Loki介绍与用法

C++设计模式类库 Loki介绍与用法 Loki是由Andrei编写的一个与<Modern C++ Design>(C++设计新思维)一书配套发行的C++代码库.它不仅把C++模板的功能发挥到了极致,而且把类似设计模式这样思想层面的东西通过库来提供.本篇文章介绍如何利用Loki来轻松地实现一些设计模式. 由于Loki使用了大量牛X到爆的模板技巧,对编译器的要求是很苛刻的,官方兼容列表里只列出了VC7.1以上版本及GCC3.4以上版本.如果你象我一样喜欢用C++Builder6或VC6,可以去下

开源爬虫Labin,Nutch,Neritrix介绍和对比

开源爬虫Labin,Nutch,Neritrix介绍和对比 2 6 从网上找了一些开源spider的相关资料,整理在下面: Larbin开发语言:C++http://larbin.sourceforge.net/index-eng.htmllarbin是个基于C++的web爬虫工具,拥有易于操作的界面,不过只能跑在LINUX下,在一台普通PC下larbin每天可以爬5百万个页面(当然啦,需要拥有良好的网络) 简介 Larbin是一种开源的网络爬虫/网络蜘蛛,由法国的年轻人 Sébastien A

最大开源代码sourceforge 简介 及视音频方面常用的开源代码

所有的音视频凯源代码在这里:http://sourceforge.net/directory/audio-video/os:windows/,你可以下载分析,视频不懂请发邮件给我,帮你分析. 0.视频项目 0.1  VLC media player VLC 多媒体播放器(最初为VideoLAN Client,是VideoLAN计划的开放源代码多媒体播放器.)支援众多音讯与视讯解码器及档案格式,并支援DVD影音光碟,VCD影音光碟及各类串流协定.它也能作为单播 或 多播的串流服务器在IPv4 或I