集团主站
欢迎来到成都达内官方网站!达内—美国上市公司 亿元级外企IT培训企业!
成都it培训哪家好
成都it培训哪家好
全国服务监督电话:15023458194  |   联系客服   |
当前位置:主页 > 培训课程 > Java >

成都java培训怎么样?DELETE、PUT等请求方法使用详解

发布者: 成都达内     浏览次数:     发布时间:2020-08-10 14:22:12

成都java培训怎么样?熟悉RESTful风格的朋友,应该了解RESTful风格API使用HTTP method表达对资源的操作。本节来为大家介绍DELETE、PUT、HEAD、OPTIONS。...

  一、RESTful风格与HTTP method

  熟悉RESTful风格的朋友,应该了解RESTful风格API使用HTTP method表达对资源的操作。

  常用HTTP方法——RESTful风格语义(操作)

  GET——查询、获取数据

  POST——新增、提交数据

  DELETE——删除数据

  PUT——更新、修改数据

  HEAD——获取HTTP请求头数据

  OPTIONS——判断URL提供的当前API支持哪些HTTP method方法

  本节来为大家介绍DELETE、PUT、HEAD、OPTIONS。

  二、使用 DELETE方法去删除资源

  删除一个已经存在的资源,使用RestTemplate的delete(uri)方法。该方法会向URL代表的资源发送一个HTTP DELETE方法请求。

  @Test

  void testDelete() {

  String url = "http://jsonplaceholder.typicode.com/posts/1";

  restTemplate.delete(url);

  }

  在前面章节测试类的基础上,写如上代码的测试用例。上面代码含义为删除posts列表里面的第1个帖子。

  二、使用PUT方法去修改资源

  修改一个已经存在的资源,使用RestTemplate的put()方法。该方法会向URL代表的资源发送一个HTTP PUT方法请求。

  @Test

  void testPut() {

  // 请求地址

  String url = "http://jsonplaceholder.typicode.com/posts/1";

  // 要发送的数据对象(修改数据)

  PostDTO postDTO = new PostDTO();

  postDTO.setUserId(110);

  postDTO.setTitle("zimug 发布文章");

  postDTO.setBody("zimug 发布文章 测试内容");

  // 发送PUT请求

  restTemplate.put(url, postDTO);

  }

  上面代码RESTful风格语义是:修改posts列表里面的第1个帖子。

  三、通用请求方法exchange方法

  exchange方法是一个通用的方法,它可以发送GET、POST、DELETE、PUT等等HTTP方法请求。

  下面的两种方式发送GET请求效果是一样的

  //使用getForEntity发送GET请求

  ResponseEntity responseEntity

  = restTemplate.getForEntity(url, PostDTO.class);

  //使用exchange发送GET请求

  ResponseEntity responseEntity = restTemplate.exchange(url, HttpMethod.GET,

  null, PostDTO.class);

  下面的两种方式发送POST请求效果是一样的

  // 使用postForEntity发送POST请求

  ResponseEntity responseEntity

  = restTemplate.postForEntity(url, postDTO, String.class);

  // 使用exchange发送POST请求

  ResponseEntity responseEntity

  = restTemplate.exchange(url, HttpMethod.POST,null, String.class);

  下面的两种方式发送DELETE请求效果是一样的,只是一个有返回值,一个返回值为void

  // 使用delete发送DELETE请求,返回值为void

  restTemplate.delete(url);

  // 使用exchange发送DELETE请求

  ResponseEntity result = restTemplate.exchange(url, HttpMethod.DELETE,null,String.class);

  上面为大家举了几个用exchange()发送请求的例子,exchange()还能针对很多的HTTP method类型发送请求,是通用方法!

  四、使用HEAD方法获取HTTP请求头数据

  使用headForHeaders()API 获取某个资源的URI的请求头信息,并且只专注于获取HTTP请求头信息。

  @Test

  public void testHEAD() {

  String url = "http://jsonplaceholder.typicode.com/posts/1";

  HttpHeaders httpHeaders = restTemplate.headForHeaders(url);

  //断言该资源接口数据为JSON类型

  assertTrue(httpHeaders.getContentType()

  .includes(MediaType.APPLICATION_JSON));

  System.out.println(httpHeaders);

  }

  请求头信息输出打印结果如下

  成都java培训怎么样?DELETE、PUT等请求方法使用详解

  五、使用OPTIONS获取HTTP资源支持的method

  下文代码使用optionsForAllow测试该URL资源是否支持GET、POST、PUT、DELETE,即增删改查。

  @Test

  public void testOPTIONS() {

  String url = "http://jsonplaceholder.typicode.com/posts/1";

  Set optionsForAllow = restTemplate.optionsForAllow(url);

  HttpMethod[] supportedMethods

  = {HttpMethod.GET, HttpMethod.POST, HttpMethod.PUT, HttpMethod.DELETE};

  //测试该url资源是否支持GET、POST、PUT、DELETE,即增删改查

  assertTrue(optionsForAllow.containsAll(Arrays.asList(supportedMethods)));

  }


(责任编辑:范老师)
最新开班
  • 成都Java培训班
    免费试听名额发放中...
  • 成都C++培训班
    免费试听名额发放中...
  • 成都PHP培训班
    免费试听名额发放中...
  • 成都网络工程培训班
    免费试听名额发放中...
  • 成都Unity3D培训班
    免费试听名额发放中...
  • 成都大数据培训班
    免费试听名额发放中...
  • 成都uid培训班
    免费试听名额发放中...
  • 成都会计培训班
    免费试听名额发放中...
  • 成都Python培训班
    免费试听名额发放中...
  • 成都嵌入式培训班
    免费试听名额发放中...
  • 成都web培训班
    免费试听名额发放中...
  • 成都软件测试培训班
    免费试听名额发放中...
在线留言
提交

校区地址:成都市锦江区东大街紫东楼端35号明宇金融广场19楼1906室

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市高新区奥克斯广场蜀锦路209号一楼商铺

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都锦江区东大街芷泉街229号东方广场C座3楼303

联系电话:15023458194

公交路线:芷泉街(188路;115路;515路;236路;505路;501路;84路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市武侯区佳灵路3号红牌楼广场2号写字楼11楼1115号

联系电话:15023458194

公交路线:红牌楼东(11路;92路;100路;111路;139路;g28路;快速公交K1/K2) 地铁路线:红牌楼站(地铁3号线)

校区地址:成都市锦江区红星路二段70号四川日报大厦502-2

联系电话:15023458194

公交路线:市二医院站(6路;49路;102路;5路;37路;g92路;) 地铁路线:地铁市二医院(地铁3号线)

校区地址:成都市锦江区东大街芷泉段229号东方广场C座16层

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:四川省成都市武侯区高新科技孵化园9号园区E座7楼

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都市高新区奥克斯广场B座1708

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

了解达内动态
关注成都达内教育公众号

首页 | 关于达内 | 课程中心 | 专家师资 | 视频教程 | 学员空间 | 校企合作 | 新闻资讯 | 就业指导 | 网站地图

2016-2025 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56