HTTPClient

软件截图:
HTTPClient
软件详细信息:
版本: 0.3-3
上传日期: 3 Jun 15
开发: -
许可: 免费
人气: 3

Rating: nan/5 (Total Votes: 0)

此包提供了一个完整的HTTP客户端库。目前,它实现了大部分的HTTP / 1.0和HTTP的相关部分的/ 1.1协议,包括请求方法HEAD,GET,POST和PUT和自动处理授权,重定向请求和饼干。
此外,包括编解码器类包含编码器和解码器中的Base64,引用可打印,URL编码,分块和多部分/表单数据编码。整个事情是免费的,GNU宽通用公共许可证(LGPL)下许可(注意,这是不一样的GPL)。
以下是包和文档HttpClient的版本0.3-3。如果你有任何问题,错误,建议,意见等看到调试和报告问题的信息。这些网页的旧版本也提供日语,得益于虞姬Kumasaka的好心的努力。
使用HttpClient的应该是很简单的。首先添加import语句导入了HTTPClient *。到您的文件(S)。接下来创建的HttpConnection的实例(你需要一个给你希望与之对话的每个服务器)。请求然后可以使用方法头(),获得(),邮政()等在HttpConnection的一个发送。
这些方法都返回的HttpResponse其具有用于访问响应头(getHeader(),getHeaderAsInt(),等等),各种响应信息(getStatusCode(),getReasonLine(),等等),响应数据(的getData方法的一个实例() ,的getText(),和的getInputStream()),并且可能已被发送的任何拖车(getTrailer(),getTrailerAsInt(),等等)。下面是一些例子上手。
检索网址“http://www.myaddr.net/my/file”文件,你可以使用类似以下内容:
    尝试
    {
        HttpConnection的CON =新的HttpConnection(“www.myaddr.net”);
        HttpResponse的RSP = con.Get(“/我/文件”);
        如果(rsp.getStatusCode()> = 300)
        {
            通信System.err.println(“收到的错误:”+ rsp.getReasonLine());
            通信System.err.println(rsp.getText());
        }
        其他
            数据= rsp.getData();
        RSP = con.Get(“/ another_file”);
        如果(rsp.getStatusCode()> = 300)
        {
            通信System.err.println(“收到的错误:”+ rsp.getReasonLine());
            通信System.err.println(rsp.getText());
        }
        其他
            other_data = rsp.getData();
    }
    赶上(IOException异常IOE)
    {
        通信System.err.println(ioe.toString());
    }
    赶上(ParseException的PE)
    {
        通信System.err.println(“错误分析的Content-Type:”+ pe.toString());
    }
    赶上(ModuleException我)
    {
        通信System.err.println(“错误处理的请求:”+ me.getMessage());
    }
这将让文件“/我/文件”和“/ another_file”,并把其内容转换为字节[]的访问通过的getData()]。请注意,您只需要创建发送请求到新服务器(不同的协议,主机或端口),当一个新的HttpConnection;虽然你可能会创建一个新的HttpConnection的每一个请求到同一台服务器这个不推荐,因为有关服务器的各种信息的第一个请求后缓存(优化后续请求)和持久连接尽可能地使用(参见高级信息)。
从一个小程序POST表单数据回您的服务器,你可以使用这样的事情(假设你有两个字段叫做姓名和电子邮件,其内容被存储在变量名和电子邮件):
    尝试
    {
        NVPair form_data [] =新NVPair [2];
        form_data [0] =新NVPair(“姓名”,姓名);
        form_data [1] =新NVPair(“邮件”,邮件);
        //注意,便捷构造的小程序
        HttpConnection的CON =新的HttpConnection(本);
        HttpResponse的RSP = con.Post(“/ cgi-bin目录/ my_script”,form_data);
        如果(rsp.getStatusCode()> = 300)
        {
            通信System.err.println(“收到的错误:”+ rsp.getReasonLine());
            通信System.err.println(rsp.getText());
        }
        其他
            流= rsp.getInputStream();
    }
    赶上(IOException异常IOE)
    {
        通信System.err.println(ioe.toString());
    }
    赶上(ModuleException我)
    {
        通信System.err.println(“错误处理的请求:”+ me.getMessage());
    }
在这里,响应数据是通过一个InputStream,而不是所有的阅读休闲立刻变成一个byte []。
再举一个例子,如果你想将文档上传到一个URL(和服务器支持HTTP PUT),你可以不喜欢以下内容:
    尝试
    {
        网址URL =新的URL(“http://www.mydomain.us/test/my_file”);
        HttpConnection的CON =新的HttpConnection(URL);
        HttpResponse的RSP = con.Put(url.getFile()的“Hello World”);
        如果(rsp.getStatusCode()> = 300)
        {
            通信System.err.println(“收到的错误:”+ rsp.getReasonLine());
            通信System.err.println(rsp.getText());
        }
        其他
            文= rsp.getText();
    }
    赶上(IOException异常IOE)
    {
        通信System.err.println(ioe.toString());
    }
    赶上(ModuleException我)
    {
        通信System.err.println(“错误处理的请求:”+ me.getMessage());
    }

显影剂的其他软件 -

Kaptain
Kaptain

12 May 15

stableUpdate
stableUpdate

2 Jun 15

quagga
quagga

11 May 15

ed2k-gtk-gui
ed2k-gtk-gui

4 Jun 15

意见 HTTPClient

评论没有发现
添加评论
打开图片!