如果熟悉HttpClient,那么你对 HTTPBuilder就不会感到陌生,它是对前者的封装,使之更符合Groovy的使用惯例。下面的例子摘自HTTPBuilder的文档,它充分展示 了自己的特点:
import groovyx.net.http.HTTPBuilder
import static groovyx.net.http.Method.GET
import static groovyx.net.http.ContentType.TEXT
def http = new HTTPBuilder( 'http://www.google.com/search' )
http.request(GET,TEXT) { req ->
uri.path = '/mail/help/tasks/'
headers.'User-Agent' = 'Mozilla/5.0'
//请求成功
response.success = { resp, reader ->
assert resp.statusLine.statusCode == 200
println "My response handler got response: ${resp.statusLine}"
println "Response length: ${resp.headers.'Content-Length'}"
System.out << reader // print response stream
}
//404
response.'404' = { resp ->
println 'Not found'
}
// 401
http.handler.'401' = { resp ->
println "Access denied"
}
//其他错误,不实现则采用缺省的:抛出异常。
http.handler.failure = { resp ->
println "Unexpected failure: ${resp.statusLine}"
}
}
无需过多的讲解,上述的例子已经非常明白地说明了HTTPBuilder的基本使用。尽管如此,对于上例中的内容类型(即request括号中的 TEXT),还是有必要啰嗦几句。HTTPBuilder支持对响应内容的自动解析,解析的方式可在请求中指定,缺省除了TEXT之外,还支持XML、 HTML和JSON。如果在请求中不指定解析方式,那么它会根据响应的内容类型选择最合适的方式进行解析。对于每一种内容类型:
HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性,它不仅使客户端发送Http请求变得容易,而且也方便开发人员测试接口(基于Http协议的),提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会更加深入。 org.apache.commons.httpclient
HTTPBuilder Overview HTTP Builder - Home HTTPBuilder Overview HTTPBuilder is the easiest way to manipulate HTTP-based resources from the JVM. In a nutshell, HTTPBuilder is a wrapper for Apache's HttpC
前阵子有一个需求,持续集成平台需要获取一个文件列表,并以可选择参数的方式列出来。列表文件来自于一个web页面,下面挂在了N个可选的文件(build后生成的zip包) 考虑用groovy发送http请求获取response,解析后以列表方式展示,因为groovy是新手,所以走了很多弯路。 1. 首先groovy请求http需要依赖HTTPBuilder模块儿,不知道怎么安装模块儿,辗转了半天,后来发
http://groovy.codehaus.org/modules/http-builder/ HTTPBuilder 是基于 Apache HttpClient框架的Groovy模块,使用Groovy的语法习惯。request/response的模式是借鉴与Prototype.js Ajax.Request模块的灵感,所以使用非常方便。有了HTTPBuilder 通过Groovy语言实现定向
OkHttp 系列文章目录 【OkHttp】OkHttp 简介 ( OkHttp 框架特性 | Http 版本简介 ) 【OkHttp】Android 项目导入 OkHttp ( 配置依赖 | 配置 networkSecurityConfig | 配置 ViewBinding | 代码示例 ) 【OkHttp】OkHttp Get 和 Post 请求 ( 同步 Get 请求 | 异步 Get 请求
"build": { "productName":"xxxx", //项目名 这也是生成的exe文件的前缀名 "appId": "com.xxx.xxxxx", //包名 "copyright":"xxxx", //版权信息 "directories": { //输出文件夹 "output": "build" }, "n
话不多说,先上一段代码,如果你使用过jquery,看到这样的代码是不是很亲切呢? def http = new HTTPBuilder('http://www.baidu.com') http.request(GET,TEXT) { //设置url相关信息 uri.path='/' uri.query=[a:'1',b:2] //设置请求头信息 headers.'User-Agent'
cocosbuilder 简介:https://blog.csdn.net/sssssnian/article/details/26450747 cocos2dx 界面自适应解决方案:http://codingnow.cn/cocos2d-x/975.html cocosbuilder 建立简单界面:https://github.com/vlidholt/CocosDragon/blob/mast
自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onLayout源码详尽分析 自定义View系列教程04–Draw源码分析及其实践 自定义View系列教程05–示例分析 自定义View系列教程06–详解View的Touch事件处理 自定义View系列教程