当前位置: 首页 > news >正文

网站建设 职责汕头软件定制

网站建设 职责,汕头软件定制,页面设计重点,成都网站建设优化推广一、详解 1.1 介绍 现如今的 Web 项目#xff0c;由服务端向外发起网络请求的场景#xff0c;基本上随处可见#xff01; 传统情况下#xff0c;在服务端代码里访问 http 服务时#xff0c;一般会使用 JDK 的 HttpURLConnection 或者 Apache 的 HttpClient#xff0c;不…一、详解 1.1 介绍 现如今的 Web 项目由服务端向外发起网络请求的场景基本上随处可见 传统情况下在服务端代码里访问 http 服务时一般会使用 JDK 的 HttpURLConnection 或者 Apache 的 HttpClient不过这种方法使用起来太过繁琐而且 api 使用起来非常的复杂还得操心资源回收。 1.2 什么是 HttpUtils HttpUtils 是 Solon 提供的进行远程调用客户端HttpUtils 提供了很多远程调用的方法能够大大提高客户端的编写效率。 HttpUtils 接口实现了 HttpURLConnection 的适配默认以及 OkHttp 的适配。官网地址 solon-net-httputils 1.3 引入依赖 dependencygroupIdorg.noear/groupIdartifactIdsolon-net-httputils/artifactId /dependencyHttpUtils 不需要初始化即可直接使用。而且可以直接使用负载均衡的能力需要引入 solon-cloud 的插件提供底层支持。像这样 HttpUtils.http(user-service, /user/get?id1).get();二、接口使用 HttpUtils 最大的特色就是对各种网络请求方式做了包装能极大的简化开发人员的工作量下面我们以 GET、POST、PUT、DELETE、文件上传与下载为例分别介绍各个API的使用方式。 2.1 GET 请求 通过 HttpUtils 发送 HTTP GET 协议请求经常使用到的方法有两个 get() - StringgetAs(Type type) - T 支持泛型 在 Solon 环境下写一个单元测试用例首先创建一个 Api 接口然后编写单元测试进行服务测试。 不带参的get请求 Controller public class TestController {GetMapping(testGet)public Result testGet(){Result result new Result();result.setCode(200);result.setMsg(demo...);return result;} }Data public class Result {private String code;private String msg; }单元测试不带参的get请求 Test public void testGet(){//请求地址String url http://localhost:8080/testGet;//发起请求,直接返回对象Result result HttpUtils.http(url).getAs(Result.class);System.out.println(result.toString());带参的get请求(使用占位符号传参) Controller public class TestController {GetMapping(testGetByRestFul/{id}/{name})public Result testGetByRestFul(Path(id) String id, Path(name) String name){Result result new Result();result.setCode(200);result.setMsg(demo...);return result;} }单元测试带参的get请求顺带加了个 header 信息。 Test public void testGetByRestFul(){//请求地址String url http://localhost:8080/testGetByRestFul/001/张三;//发起请求,直接返回对象restful风格Result result HttpUtils.http(url).header(App-Id,1).getAs(Result.class);System.out.println(result.toString()); }2.2 POST 请求 其实 POST 请求方法和 GET 请求方法上大同小异HttpUtils 的 POST 请求也包含两个主要方法 post() - StringpostAs(Type type) - T支持泛型 模拟表单请求post方法测试 Controller public class TestController {PostMapping(testPostByForm)public Result testPostByForm(String userName, String userPwd){Result result new Result();result.setCode(200);result.setMsg(Demo...);return result;} }x-www-form-urlencoded post Test public void testPostByForm(){//请求地址String url http://localhost:8080/testPostByForm;//发起请求Result result HttpUtils.http(url).data(userName, 唐三藏).data(userPwd, 123456).postAs(Result.class);System.out.println(result.toString()); }form-data post顺带加上文件上传 Test public void testPostByForm(){//请求地址String url http://localhost:8080/testPostByForm;//发起请求Result result HttpUtils.http(url).data(userName, 唐三藏).data(userPwd, 123456).data(file, logo.jpg, new File(/data/logo.jpg)) .postAs(Result.class, true); //useMultipart trueSystem.out.println(result.toString()); }json-body post Test public void testPostByForm(){//请求地址String url http://localhost:8080/testPostByForm;//发起请求Result result HttpUtils.http(url).bodyOfJson({\userName\:\唐三藏\,\userPwd\:\123456\}).postAs(Result.class); System.out.println(result.toString()); }bean-body post Test public void testPostByForm(){//请求地址String url http://localhost:8080/testPostByForm;UserBean user new UserBean();user.setUserName(唐三藏);user.setUserPwd(123456)//发起请求Result result HttpUtils.http(url).bodyOfBean(user).postAs(Result.class); System.out.println(result.toString()); }2.3 PUT、PATCH、DELETE 请求 用法与 POST 完全相同。 2.4 高级用法 获取响应用完要关闭 try(HttpResponse resp HttpUtils.http(http://localhost:8080/hello).data(name,world).exec(POST)) {int code resp.code();String head resp.header(Demo-Header);String body resp.bodyAsString(); }配置序列化器。默认为 json改为 fury或者自己定义。 FuryBytesSerializer serializer new FuryBytesSerializer();Result body HttpUtils.http(http://localhost:8080/book).serializer(serializer).bodyOfBean(book).postAs(Result.class);
http://www.hkea.cn/news/14320778/

相关文章:

  • 郑州网站设计汉狮网站自适应是什么做的
  • 邢台网站建设开发微商城平台有哪些
  • 基层建设被哪些网站全文收录东莞教育建站
  • 营销型网站设计难不难seo对网站优化
  • 出售网站建设群如果盗用网站模板
  • 做查工资的网站怎么增加网站的关键词库
  • 响应式网站建设特色徐州经济技术开发区
  • 精品电商网站建设wordpress怎么加速
  • 网站建设 永灿 竞争网页设计随机点名代码
  • 资讯类网站建设什么是网络设计冗余设计
  • 网站维护作用推广文案大全
  • 苏州网站制作网站建设wordpress主题 清新
  • 网站建设公司-信科网络wordpress落叶插件
  • 南阳住房和城乡建设厅网站新品手机发布会一览表
  • 嘉兴网站制作优化电子商务网站建设需求
  • 制作微信公众号网站开发电商网站订烟平台
  • 靓号注册网站免费wordpress模板学校
  • tomcat 网站开发水利建设相关网站
  • 西安网站建设培训比58同城做的好的网站
  • 网站代码设计网页编程html
  • 做网站需要做哪些东西wordpress 移植
  • 山东省建设监理协会官方网站南京响应式网站制作
  • 站酷设计网站官网入口插画设计评级网站怎么做
  • 网站建设招聘钓鱼网站链接
  • 珠海市网络营销协会的官方网站seo优化流程
  • 注册网站会有哪些风险哈尔滨优质的建站销售价格
  • 重庆环保公司网站建设人人秀h5制作软件下载
  • 建设网站技术数据策划书卖普洱茶做网站
  • 汉中微信网站建设推广移动应用开发技术学什么
  • 郑州那家做网站便宜进入微信公众号首页