java http put请求方式_HttpClient HTTP PUT请求方法示例
本教程演示如何使用Apache HttpClient 4.5发出Http PUT请求。 HTTP PUT请求方法请求服务器接受并存储提供的URI中包含的实体。 如果该URI引用已经存在的资源,则该资源被修改; 如果URI不指向现有资源,则服务器可以使用该URI创建资源。
Maven依赖关系
我们使用maven来管理依赖关系,并使用Apache HttpClient 4.5版本。 将以下依赖项添加到您的项目中,以便创建HTTP PUT请求方法。
pom.xml 文件的内容如下 -
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
com.yiibai.httpclient.httmethods
http-get
1.0.0-SNAPSHOT
https://memorynotfound.com
httpclient - ${project.artifactId}
org.apache.httpcomponents
httpclient
4.5.2
maven-compiler-plugin
3.5.1
1.8
1.8
HTTP PUT请求方法示例
在以下示例中,我们将数据发布到资源URL:http://httpbin.org/put 。 该资源确认数据并返回一个JSON对象,我们只需将其打印到控制台。 注意:使用Java7的try-with-resources来自动处理关闭ClosableHttpClient。 接下来使用Java 8的lambda作为ResponseHandler。 在这里,根据Http状态代码判断返回状态,当一切正常时,我们会将解析的响应正文返回给String。 当状态码不是所期望的时候,将抛出一个ClientProtocolException,表明Http PUT请求方法失败。 最后,我们将响应主体打印到控制台。
文件:HttpPutRequestMethodExample.java -
package com.yiibai.httpdemo;
import org.apache.http.HttpEntity;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpPut;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import java.io.IOException;
/**
* This example demonstrates the use of {@link HttpPut} request method.
*/
public class HttpPutRequestMethodExample {
public static void main(String... args) throws IOException {
try (CloseableHttpClient httpclient = HttpClients.createDefault()) {
HttpPut httpPut = new HttpPut("http://httpbin.org/put");
httpPut.setEntity(new StringEntity("Hello, World"));
System.out.println("Executing request " + httpPut.getRequestLine());
// Create a custom response handler
ResponseHandler responseHandler = response -> {
int status = response.getStatusLine().getStatusCode();
if (status >= 200 && status < 300) {
HttpEntity entity = response.getEntity();
return entity != null ? EntityUtils.toString(entity) : null;
} else {
throw new ClientProtocolException("Unexpected response status: " + status);
}
};
String responseBody = httpclient.execute(httpPut, responseHandler);
System.out.println("----------------------------------------");
System.out.println(responseBody);
}
}
}
执行上面示例代码,得到以下结果 -
Executing request PUT http://httpbin.org/put HTTP/1.1
----------------------------------------
{
"args": {},
"data": "Hello, World",
"files": {},
"form": {},
"headers": {
"Accept-Encoding": "gzip,deflate",
"Connection": "close",
"Content-Length": "12",
"Content-Type": "text/plain; charset=ISO-8859-1",
"Host": "httpbin.org",
"User-Agent": "Apache-HttpClient/4.5.5 (Java/1.8.0_65)"
},
"json": null,
"origin": "112.67.166.104",
"url": "http://httpbin.org/put"
}
¥ 我要打赏
纠错/补充
收藏
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。
java http put请求方式_HttpClient HTTP PUT请求方法示例相关推荐
- HTTP请求方式中8种请求方法(简单介绍)
HTTP请求方式中8种请求方法(简单介绍) 简单介绍 HTTP是超文本传输协议,其定义了客户端与服务器端之间文本传输的规范.HTTP默认使用80端口,这个端口指的是服务端的端口,而客户端使用的端口是动 ...
- Ajax基本请求方式及其跨域请求
1.Ajax异步刷新 Ajax的工作流程 Jsp页面通过js向服务器(servlet)发送请求获取到数据,将数据获取到js中,js将数据显示到jsp页面中(document来操作element),最后 ...
- php 请求方式,PHP发起HTTP请求有哪几种方式?
PHP发起HTTP请求方式有:1.通过[file_get_contents]发送get请求:2.通过[CURL]发送get请求:3.通过[fsocket]发送get请求. PHP发起HTTP请求方式有 ...
- html 怎么使用http请求数据类型,HTTP请求方式中8种请求方法(简单介绍)
HTTP工作原理 HTTP协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端.HTTP协议采用了请求/响应模型.客户端向服务器发送一个请求报文,请求报文包含请 ...
- jeecgboot中,修改请求方式加入阻止重复请求的方法。
全部request.js代码 import Vue from 'vue' import axios from 'axios' import store from '@/store' import { ...
- java修改图章图片_Java处理PDF图章的方法示例(代码)
本篇文章给大家带来的内容是关于Java 处理PDF图章的方法示例(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 图章(印章)是一种在合同.票据.公文等文件中表明法律效应.部门 ...
- Java 用HTTP的方式发送JSON报文请求
前言: 项目调用第三方接口时,通常是用socket或者http的通讯方式发送请求:http 为短连接,客户端发送请求都需要服务器端回送响应,请求结束后,主动释放链接.Socket为长连接:通常情况下S ...
- Java代码三种方式实现定时执行某个方法
如果你想定时的去执行某个方法,跟着这个操作测试一下,你就会了. 有3种定时方法可以做数据同步. 第一种: jdk提供的定时器工具Timer 1.单线程 2.可以指定延迟(开始执行的时间).周期时间 3 ...
- Vue中使用qs 将post 请求方式序列化成get 请求
qs 是一个增加了一些安全性的查询字符串解析和序列化字符串的库 npm install qs 组件使用 import qs from 'qs' 主要使用qs.parse(),qs.string qs. ...
- python伪造浏览器请求头_Python3 伪装浏览器的方法示例
一.伪装浏览器 对于一些需要登录的网站,如果不是从浏览器发出的请求,则得不到响应.所以,我们需要将爬虫程序发出的请求伪装成浏览器正规军. 具体实现:自定义网页请求报头. 二.使用Fiddler查看请求 ...
最新文章
- 已知环境静态障碍物避障_我女儿如何教我无障碍环境
- Mysql字符串处理
- CentOS 6.5下SSH总提示Warning: Permanently added '****' (RSA) to the list of known hosts.
- 【Linux】eclipse juno 边框过大的调整方法
- RequestAnimationFrame知多少?
- [全文索引]非索引字表
- Linux动态链接库的使用
- 信号通路:PI3K信号通路与PI3Kα抑制剂
- java int64如何定义_java – 具有两个int属性的自定义类的hashCode是什么?
- Android210更新2---支持喇叭
- Docker 私有仓库的搭建
- Xuggler视频处理简介
- 一个小菜鸟给未来的菜鸟们的一丢丢建议
- python根据矩阵数值大小涂上不同深浅颜色
- java ic卡读写_使用Java驱动ACR122U对IC卡进行读写,总结
- 如何利用抖加实现精准引流?3种玩法,愿你别再花冤枉钱了?(五)
- 1998-2018 TOM邮箱20年发展
- java 工资如何_Java编写员工薪资表
- 博弈论(巴什博奕,威佐夫博弈,尼姆博弈,斐波那契博弈)
- 第三方登陆--QQ登陆
热门文章
- 人类dna信息量_如果有一个人的DNA序列等遗传信息数据,理论上能否克隆出这个人?需多少MB(兆字节)的信息量?...
- 用计算机怎么刷试听量,QQ音乐怎么刷播放次数,快速增加播放量
- 2020-11-13 Python 文件读写、os模块及递归函数
- scroll-view实现下拉刷新(避免onload进入页面初始refresher-triggered为true触发下拉问题)
- “自我炒作”雄安新区 遭监管层严打
- VVC系列(三)xCompressCTU、xCompressCU和xCheckModeSplit解析
- 机器学习笔记之R语言基础5(T,F检验)
- 玩转oled屏(基于SPI协议)
- XCode6 模拟器键盘不显示解决方案
- zipException error in opening zip file