通过Jersey客户端API调用REST风格的Web服务
来源:互联网 发布:linux绑定域名 编辑:程序博客网 时间:2024/05/16 11:38
要开始使用 Jersey 客户端 API,你首先需要创建一个 com.sun.jersey .api.client.Client类的实例。下面是最简单的方法:
imp
Client client = Client.create();
Client 类是创建一个 RESTful Web Service客户端的主要配置点。你可以使用它来配置不同的客户端属性和功能,并且指出使用哪个资源提供者。创建一个 Client类的实例是一个比较昂贵的操作,所以尽量避免创建一些不需要的客户端实例。比较好的方式是尽可能地复用已经存在的实例。
Web 资源创建了一个 WebResponse 对象:
imp
Web Resource webResource = c.resource("http://example.com/base");
通过使用 WebResource 对象来创建要发送到 Web 资源的请求,以及处理从 Web 资源返回的响应。例如,你可以使用WebResource 对象来发送 HTTP GET、PUT、POST 以及 DELETE 请求。
String s = webResource.get(String.class);
String s = webResource.get(String.class);
MultivaluedMap queryParams = new MultivaluedMapImpl();
queryParams.add("param1", "val1");
queryParams.add("param2", "val2");
String s =webResouce.queryParams(queryParams).get(String.class);
String s =webResource.accept("text/plain").get(String.class);
你还可以获取对应请求的 HTTP状态码,例如下面这个例子展示获取一个请求所返回的文本实体与状态码:
ClientResponse response = webResource.accept("text/plain")
int status = response.getStatus();
String textEntity =response.getEntity(String.class);
ClientResponse 对象代表了一个客户端收到的 HTTP响应。
PUT 请求 :使用 WebResource 类的 put() 方法来提交一个 HTTP PUT 请求到 Web资源。例如下面的代码展示了请求发送一个文本实体 foo:bar 到指定的 Web 资源:
ClientResponse response = webResource.type("text/plain")
同样,你也可以在使用 put() 方法发送请求时指定查询参数,方法与使用 get()方法时指定查询参数一样。在下面的例子中,把在之前 get() 方法示例中使用过的两个同样的查询参数指定到了一个 put()请求中:
MultivaluedMap queryParams = new MultivaluedMapImpl();
queryParams.add("param1", "val1");
queryParams.add("param2", "val2");
ClientResponse response =webResource.queryParams(queryParams)
MultivaluedMap formData = new MultivaluedMapImpl();
formData.add("name1", "val1");
formData.add("name2", "val2");
ClientResponse response =webResource.type("application/x-www-form-urlencoded")
ClientResponse response = webResource.path("user/123")
另外如果表单提交的话,需要new Form来作为参数提交。
package com.trend.vmware.client;
import javax.ws.rs.core.MediaType;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.WebResource;
import com.sun.jersey.api.representation.Form;
import com.trend.vmware.model.TaskResponse;
public class VMOVFRestClient {
}
- 通过 Jersey 客户端 API 调用 REST 风格的 Web 服务
- 通过 Jersey 客户端 API 调用 REST 风格的 Web 服务
- 通过Jersey客户端API调用REST风格的Web服务
- 通过 Jersey 客户端 API 调用 REST 风格的 Web 服务
- 通过 Jersey 客户端 API 调用 REST 风格的 Web 服务
- 通过 Jersey 客户端 API 调用 REST 风格的 Web 服务
- 通过Jersey客户端API调用REST风格的Web服务
- Jersey客户端API调用REST风格的Web服务
- 通过Jersey客户端API调用RestFul风格的Web服务
- 通过Jersey客户端API调用RestFul风格的Web服务
- Jersey构建RESTful服务4--通过jersey-client客户端调用Jersey的Web服务模拟CURD
- 用Jersey构建RESTful服务4--通过jersey-client客户端调用Jersey的Web服务模拟CURD
- 用Jersey构建RESTful服务4--通过jersey-client客户端调用Jersey的Web服务模拟CURD
- 用Jersey构建RESTful服务4--通过jersey-client客户端调用Jersey的Web服务模拟CURD
- 通过jersey-client客户端调用Jersey的Web服务模拟CURD
- 通过jersey-client客户端调用Jersey的Web服务模拟CURD
- jersey 搭建rest风格服务
- java调用rest风格web服务的两种方式
- 基础练习 查找整数
- curl https://consul.rocks/v1/kv/my-key
- java-引用
- hibernate4 封装BaseDao增删改查以及分页,,支持jdk1.7,不支持jdk1.8
- 利用poi实现word转换html
- 通过Jersey客户端API调用REST风格的Web服务
- 人力资源管理系统开发----项目构建
- Jquery中使用定时器setInterval和setTimeout
- 求树的叶子个数
- MongoDB的文档、集合和数据库
- 曾经误入传销我和linux系统结下缘分
- MapReduce-深度剖析
- 关于ThinkPHP5 的request()接收图片上传问题
- xgboost linux安装编译