使用策略模式避免八种http请求方式多重判断
2023-06-13 09:11:26 时间
八种http请求方式
http/1.1协议中共定义了八种请求方式来表明requeset-url不同的操作,分别是get、post、head、options、put、delete、trace、connect。
httpclient用if else 多重判断来实现不同请求
if (Consts.API.REQUEST_METHOD_POST.equals(frontendMessage.getRequestMethod().toUpperCase())) {
// post请求实现
return doPost(exchange);
}
else if (Consts.API.REQUEST_METHOD_GET.equals(frontendMessage.getRequestMethod().toUpperCase())) {
// get请求实现
return doGet(exchange);
}
else if (Consts.API.REQUEST_METHOD_PUT.equals(frontendMessage.getRequestMethod().toUpperCase())) {
// put请求实现
return doPut(exchange);
}
else if (Consts.API.REQUEST_METHOD_PATCH.equals(frontendMessage.getRequestMethod().toUpperCase())) {
// patch请求实现
return doPatch(exchange);
}
else if (Consts.API.REQUEST_METHOD_DELETE.equals(frontendMessage.getRequestMethod().toUpperCase())) {
// delete请求实现
return doDelete(exchange);
}
使用策略模式实现http请求方式
// httpclient写法
HttpMethod method = HttpMethod.valueOf(frontendMessage.getRequestMethod().toUpperCase());
return webClient.method(method)
// httpclient5写法
HttpUriRequestBase request = new HttpUriRequestBase(frontendMessage.getRequestMethod().toUpperCase(), uri);
CloseableHttpResponse response = httpclient.execute(request);
相关文章
- 从零开始配置 vim(18)——终端模式
- 四、观察者模式
- 【说站】php单例模式有什么用
- linux vim怎么退出编辑模式_shell退出vi编辑器
- 【经验】使用http访问一个链接提示400的错误,但是在浏览器访问没问题(server returned HTTP Response code :400 fro URL:),怎么解决
- 分布式事务 | 使用 dotnetcore/CAP 的本地消息表模式
- 批处理模式下运行 top 命令的方法
- Akka(37): Http:客户端操作模式详解编程语言
- 模式开启MacOS深色模式,让你的界面充满魔力(macos深色)
- 请求使用Linux发送HTTP请求的方法(linux发送http)
- 服务器Linux下简易配置HTTP服务器(linux配置http)
- Linux下HTTP抓包实战精要(http抓包linux)
- 极速搭建Linux下HTTP代理服务器(linux搭建http代理)
- 安徽:开启“两线作战”模式,防汛应急响应升至I级
- 服务器管理Linux中的HTTP服务器(linux中http)
- Emacs 系列(五):Org 模式之文档与演示稿
- Linux 文件权限详解——数字权限模式(linux数字权限)
- 模式解决Oracle的无归档模式问题(oracle没有归档)
- 如何关闭Oracle归档模式?(关闭oracle归档模式)
- HTTP请求在Linux下的实现(http请求linux)
- 模式SQL Server实现单例模式简易教程(sqlserver 单例)
- 深入浅出Mongodb Http: 开箱即用的可扩展性数据库(mongodb http)
- 模式 Linux下快速进入单用户模式的简单方法(linux 进入单用户)
- Linux快速搭建超强HTTP服务器(linux搭建http服务器)
- 以Oracle关系模式设计的数据一目了然(oracle关系模式)
- 优化Oracle数据库共享模式设置的技巧(oracle共享模式设置)
- MySQL数据库已支持XA事务模式,加强了数据库事务处理能力(mysql xa支持)
- 哨兵模式下Redis更改密码安全保障(哨兵redis密码)
- Oracle数据库调整模式名的实现方式(oracle修改模式名)
- queue开发高效Oracle Job Queue处理模式(oracle job_)
- oracle的归档模式ORACLE数据库归档日志常用命令