`
cppupu
  • 浏览: 49194 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

使用jetty 自带的http client!

    博客分类:
  • Java
阅读更多
一般情况下我们需要使用HttpClient时可供选择的技术有:
1、HttpURLConnection
2、Apache HttpClient
其他的除了写Socket 我都没有用过了。

偶然的机会发现Jetty 里面也自带了一个HttpClient,并且支持事件触发的处理方式。

HttpClient client = new HttpClient();
client.setConnectorType(HttpClient.CONNECTOR_SELECT_CHANNEL);
try
{
  client.start();
}
catch (Exception e)
{
  throw new ServletException(e);
}

// create the exchange object, which lets you define where you want to go
// and what you want to do once you get a response
ContentExchange exchange = new ContentExchange()
{
  // define the callback method to process the response when you get it back
  protected void onResponseComplete() throws IOException
  {
    super.onResponseComplete();
    String responseContent = this.getResponseContent();

    // do something with the response content
    ...
  }
};

exchange.setMethod("GET");
exchange.setURL("http://www.example.com/");

// start the exchange
client.send(exchange);


还可以使用同步的处理方式:
public static void main(String[] args)
        {
		HttpClient httpClient = new HttpClient();
                //set up httpClient
                httpClient.start();
		ContentExchange contentExchange = new ContentExchange();
                httpClient.setConnectorType(HttpClient.CONNECTOR_SELECT_CHANNEL);
		contentExchange.setURL("http://slashdot.org");
                httpClient.send();
                contentExchange.waitForDone();
		System.err.println("Response status: "+contentExchange.getResponseStatus());
	}


还可以方便的设置Proxy网关:
client.setProxy(new Address("proxy_address",proxy_port));
client.setProxyAuthentication(new ProxyAuthorization("user","password"));


jetty http client 感觉不错,比Apache HttpClient更加易用、小巧!
0
0
分享到:
评论

相关推荐

    jetty-client-9.4.43.v20210629-API文档-中英对照版.zip

    赠送jar包:jetty-client-9.4.43.v20210629.jar; 赠送原API文档:jetty-client-9.4.43.v20210629-javadoc.jar; 赠送源代码:jetty-client-9.4.43.v20210629-sources.jar; 赠送Maven依赖信息文件:jetty-client-...

    jetty-client-9.4.11.v20180605-API文档-中英对照版.zip

    赠送jar包:jetty-client-9.4.11.v20180605.jar; 赠送原API文档:jetty-client-9.4.11.v20180605-javadoc.jar; 赠送源代码:jetty-client-9.4.11.v20180605-sources.jar; 赠送Maven依赖信息文件:jetty-client-...

    jetty-client-9.4.11.v20180605-API文档-中文版.zip

    赠送jar包:jetty-client-9.4.11.v20180605.jar; 赠送原API文档:jetty-client-9.4.11.v20180605-javadoc.jar; 赠送源代码:jetty-client-9.4.11.v20180605-sources.jar; 赠送Maven依赖信息文件:jetty-client-...

    jetty-client-6.1.6rc0.jar

    jetty-client-6.1.6rc0.jar

    jetty相关的全部jar包

    jetty-security-9.4.8.v20171121.jar,jetty-io-9.4.8.v20171121.jar,jetty-continuation-9.4.8.v20171121.jar,jetty-client-9.4.8.v20171121.jar,jetty-jmx-9.4.8.v20171121.jar,jetty-plus-9.4.8.v20171121....

    jetty-client-9.4.43.v20210629-API文档-中文版.zip

    赠送jar包:jetty-client-9.4.43.v20210629.jar; 赠送原API文档:jetty-client-9.4.43.v20210629-javadoc.jar; 赠送源代码:jetty-client-9.4.43.v20210629-sources.jar; 赠送Maven依赖信息文件:jetty-client-...

    jetty-http-9.4.11.v20180605-API文档-中英对照版.zip

    赠送jar包:jetty-http-9.4.11.v20180605.jar; 赠送原API文档:jetty-http-9.4.11.v20180605-javadoc.jar; 赠送源代码:jetty-http-9.4.11.v20180605-sources.jar; 赠送Maven依赖信息文件:jetty-...

    jetty的http包

    这个包里面包含jetty的http包,最新版的(至今)jetty-7.0,里面根本没有http相关的包,我在进行junit in action学习中,有一个实例JettySample及相关jetty的例子,都必须用到.后来网络上费了很大的劲才找到,很不容易!

    jetty-http-9.3.19.v20170502-API文档-中文版.zip

    赠送jar包:jetty-http-9.3.19.v20170502.jar; 赠送原API文档:jetty-http-9.3.19.v20170502-javadoc.jar; 赠送源代码:jetty-http-9.3.19.v20170502-sources.jar; 赠送Maven依赖信息文件:jetty-...

    jetty9分拆的各个包下载

    jetty-alpn-client-9.2.26.v20180806.jar jetty-alpn-server-9.2.26.v20180806.jar jetty-annotations-9.2.26.v20180806.jar jetty-cdi-9.2.26.v20180806.jar jetty-client-9.2.26.v20180806.jar jetty-continuation...

    jetty-http-7.4.2.v20110526.jar

    jetty-http-7.4.2.v20110526.jar jetty-http 服务jar包

    Jetty9 配置使用HTTPS证书

    Jetty9 配置使用HTTPS证书,访问你的服务器更安全,更好的配置方法。

    Jetty Demo

    Hello Jetty 入门简单实例!可直接运行!

    jetty-http-9.4.43.v20210629-API文档-中英对照版.zip

    赠送jar包:jetty-http-9.4.43.v20210629.jar; 赠送原API文档:jetty-http-9.4.43.v20210629-javadoc.jar; 赠送源代码:jetty-http-9.4.43.v20210629-sources.jar; 赠送Maven依赖信息文件:jetty-...

    jetty-http-9.4.8.v20171121-API文档-中文版.zip

    赠送jar包:jetty-http-9.4.8.v20171121.jar; 赠送原API文档:jetty-http-9.4.8.v20171121-javadoc.jar; 赠送源代码:jetty-http-9.4.8.v20171121-sources.jar; 赠送Maven依赖信息文件:jetty-...

    jetty-http-9.4.43.v20210629-API文档-中文版.zip

    赠送jar包:jetty-http-9.4.43.v20210629.jar; 赠送原API文档:jetty-http-9.4.43.v20210629-javadoc.jar; 赠送源代码:jetty-http-9.4.43.v20210629-sources.jar; 赠送Maven依赖信息文件:jetty-...

    Jetty中文手册

    Equinox中使用Jetty实现HTTP Service Felix中使用Jetty实现HTTP Service PAX中使用Jetty实现HTTP Srevice ProSyst mBedded Server Equinox Edition Spring Dynamic Modules里的Jetty JOnAS5里的Jetty 配置Ajax、...

    Jetty使用总结

    Jetty使用总结

    jetty6 嵌入式使用

    引入到eclipse可以直接使用Starter类运行。 包含必备jar包:jetty-6.1.26.jar,jetty-util-6.1.26,servlet的相关jar包。 jetty入门级源代码。

    JETTY官方原版jar包-[上传于20210408].rar

    从官网下载的JETTY官方jar包 版本包含 1、jetty-distribution-9.4.39.v20210325,官网更新日期为2021.03.25 2、jetty-home-10.0.2 3、jetty-home-11.0.2 后缀为.tar.gz的为linux版本,后缀为.zip的为win版本。

Global site tag (gtag.js) - Google Analytics