groovy http_Groovy和HTTP

本文介绍了Groovy如何简化与Web的交互,特别是通过增强Java的String和URL类以及使用HTTPBuilder和HttpClient。文章通过示例展示了Groovy的toURL()、text()方法,以及使用HTTPBuilder进行GET和POST请求的便利性。
摘要由CSDN通过智能技术生成

groovy http

本文最初发表在GroovyMag的 2012年12月号上。

Groovy使与Web交互更容易的一些不同方式

Groovy的主要优点之一是它简化了我们在Java中处理的一些常见方案。 带有条件,错误处理和许多其他问题的复杂代码可以非常简洁易懂的方式表示。 本文将介绍一些与通过HTTP与内容进行交互有关的便捷Groovy主义。 首先,我们将研究添加到标准Java类中的一些语法糖,这些语法可以简化GET和POST请求,然后我们将研究如何

HTTPBuilder模块提供了用于使用HttpClient库的DSL。

测试项目

为了提供一个建立网站和演示各种HTTP请求的环境,我们将使用Gradle Jetty插件和一些简单的Groovlets 。 完整的源代码可从https://github.com/kellyrob99/groovy-http获得 ,我希望您可以克隆一个副本以进一步了解。 简单的索引页面包含清单1中所示的“ hello world”内容。

<!DOCTYPE html>
<html>
<head>
    <title>Groovy HTTP</title>
</head>
<body>
<p>hello world</p>
</body>
</html>
清单1:用于测试的“ hello world”索引页面

我们将从使用Groovy与HTTP进行交互的最简单的可用方法开始,不提供任何其他库支持。

Groovy方法添加到String和URL

DefaultGroovyMethods类提供了几个非常方便的方法来增强String和URL类的默认操作。 特别是对于String,我们有一个新的toURL()方法,对于URL,还有一个text属性。 此外,URL类还通过使用便捷的方法来增强了与关联的InputStream和OutputStreams的配合。

String.toURL()

这是一个很小的收获,因为您真正要做的就是避免调用new URL(String spec) 。 击键的差别并不大,但是,结合Groovy的其他MetaClass优点,它对于创建流利且易于理解的代码非常有帮助。

URL.text()

对URL类的API的这种看似很小的增加使通过URLConnection流传输内容所涉及的许多通常的样板变得抽象了。 引擎盖下面是一个非常明智的实现,它缓冲了基础连接并自动为您处理所有资源的关闭。 在大多数情况下,默认行为可能就足够了,但如果不这样做,则有重载的URL.text(String charset)和URL.text(Map parameters,String charset)方法&

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值