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

杭州滨江网站建设公司怎样免费建立自己网站

杭州滨江网站建设公司,怎样免费建立自己网站,如何做网站推广达到好的效果,犀牛云做的网站好不好需求#xff1a;在当前模块对其他模块/服务的接口发送请求。 扩展想法#xff1a;可以利用它实现一个小的接口测试工具#xff08;例如#xff1a;postman#xff09;、分布式微服务快速开发的调用个接口的框架工具。 1.1 介绍 HttpClient 是Apache Jakarta Common 下的…需求在当前模块对其他模块/服务的接口发送请求。 扩展想法可以利用它实现一个小的接口测试工具例如postman、分布式微服务快速开发的调用个接口的框架工具。 1.1 介绍 HttpClient 是Apache Jakarta Common 下的子项目可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包并且它支持 HTTP 协议最新的版本和建议。 HttpClient作用 发送HTTP请求 接收响应数据 HttpClient应用场景 当我们在使用扫描支付、查看地图、获取验证码、查看天气等功能时 其实应用程序本身并未实现这些功能都是在应用程序里访问提供这些功能的服务访问这些服务需要发送HTTP请求并且接收响应数据可通过HttpClient来实现。 HttpClient的maven坐标 dependencygroupIdorg.apache.httpcomponents/groupIdartifactIdhttpclient/artifactIdversion4.5.13/version /dependency HttpClient的核心API HttpClientHttp客户端对象类型使用该类型对象可发起Http请求。 HttpClients可认为是构建器可创建HttpClient对象。 CloseableHttpClient实现类实现了HttpClient接口。 HttpGetGet方式请求类型。 HttpPostPost方式请求类型。 HttpClient发送请求步骤 创建HttpClient对象 创建Http请求对象 调用HttpClient的execute方法发送请求 1.2 入门案例 对HttpClient编程工具包有了一定了解后那么我们使用HttpClient在Java程序当中来构造Http的请求并且把请求发送出去接下来就通过入门案例分别发送GET请求和POST请求具体来学习一下它的使用方法。 1.2.1 GET方式请求 如果在项目中已经引入了aliyun-sdk-oss坐标也可以直接使用已经集成了它的坐标。 dependencygroupIdcom.aliyun.oss/groupIdartifactIdaliyun-sdk-oss/artifactId /dependency 上述依赖的底层已经包含了HttpClient相关依赖。 故选择导入或者不导入均可。 进入到sky-server模块编写测试代码发送GET请求。 实现步骤 创建HttpClient对象 创建请求对象 发送请求接受响应结果 解析结果 关闭资源 测试理解一下就行重点在封装工具使用 创建测试类 在访问自己的http://localhost:8080/user/shop/status请求时需要提前启动项目。 import com.alibaba.fastjson.JSONObject; import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; 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 org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest;//SpringBootTest public class HttpClientTest {/*** 测试通过httpclient发送GET方式的请求*/Testpublic void testGET() throws Exception{//创建httpclient对象CloseableHttpClient httpClient HttpClients.createDefault();//创建请求对象//HttpGet httpGet new HttpGet(http://localhost:8080/user/shop/status);HttpGet httpGet new HttpGet(http://www.baidu.com/);//发送请求接受响应结果CloseableHttpResponse response httpClient.execute(httpGet);//获取服务端返回的状态码int statusCode response.getStatusLine().getStatusCode();System.out.println(服务端返回的状态码为 statusCode);//获取响应体HttpEntity entity response.getEntity();String body EntityUtils.toString(entity);System.out.println(服务端返回的数据为 body);//关闭资源response.close();httpClient.close();}测试结果 1.2.2 POST方式请求 在HttpClientTest中添加POST方式请求方法相比GET请求来说POST请求若携带参数需要封装请求体对象并将该对象设置在请求对象中。 实现步骤 创建HttpClient对象 创建请求对象 发送请求接收响应结果 解析响应结果 关闭资源 /*** 测试通过httpclient发送POST方式的请求*/Testpublic void testPOST() throws Exception{// 创建httpclient对象CloseableHttpClient httpClient HttpClients.createDefault();//创建请求对象HttpPost httpPost new HttpPost(http://localhost:8080/admin/employee/login);//构造接口请求参数JSONObject jsonObject new JSONObject();jsonObject.put(username,admin);jsonObject.put(password,123456);StringEntity entity new StringEntity(jsonObject.toString());//指定请求编码方式entity.setContentEncoding(utf-8);//数据格式entity.setContentType(application/json);httpPost.setEntity(entity);//发送请求CloseableHttpResponse response httpClient.execute(httpPost);//解析返回结果int statusCode response.getStatusLine().getStatusCode();System.out.println(响应码为 statusCode);HttpEntity entity1 response.getEntity();String body EntityUtils.toString(entity1);System.out.println(响应数据为 body);//关闭资源response.close();httpClient.close();} 测试结果 二、将其封装成一个工具类来使用 创建工具类HttpClientUtil.java import com.alibaba.fastjson.JSONObject; import org.apache.http.NameValuePair; import org.apache.http.client.config.RequestConfig; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.client.utils.URIBuilder; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils; ​ import java.io.IOException; import java.net.URI; import java.util.ArrayList; import java.util.List; import java.util.Map; ​ /*** Http工具类*/ public class HttpClientUtil { ​static final  int TIMEOUT_MSEC 5 * 1000; ​/*** 发送GET方式请求* param url* param paramMap* return*/public static String doGet(String url,MapString,String paramMap){// 创建Httpclient对象CloseableHttpClient httpClient HttpClients.createDefault(); ​String result ;CloseableHttpResponse response null; ​try{URIBuilder builder new URIBuilder(url);if(paramMap ! null){for (String key : paramMap.keySet()) {builder.addParameter(key,paramMap.get(key));}}URI uri builder.build(); ​//创建GET请求HttpGet httpGet new HttpGet(uri); ​//发送请求response httpClient.execute(httpGet); ​//判断响应状态if(response.getStatusLine().getStatusCode() 200){result EntityUtils.toString(response.getEntity(),UTF-8);}}catch (Exception e){e.printStackTrace();}finally {try {response.close();httpClient.close();} catch (IOException e) {e.printStackTrace();}} ​return result;} ​/*** 发送POST方式请求* param url* param paramMap* return* throws IOException*/public static String doPost(String url, MapString, String paramMap) throws IOException {// 创建Httpclient对象CloseableHttpClient httpClient HttpClients.createDefault();CloseableHttpResponse response null;String resultString ; ​try {// 创建Http Post请求HttpPost httpPost new HttpPost(url); ​// 创建参数列表if (paramMap ! null) {ListNameValuePair paramList new ArrayList();for (Map.EntryString, String param : paramMap.entrySet()) {paramList.add(new BasicNameValuePair(param.getKey(), param.getValue()));}// 模拟表单UrlEncodedFormEntity entity new UrlEncodedFormEntity(paramList);httpPost.setEntity(entity);} ​httpPost.setConfig(builderRequestConfig()); ​// 执行http请求response httpClient.execute(httpPost); ​resultString EntityUtils.toString(response.getEntity(), UTF-8);} catch (Exception e) {throw e;} finally {try {response.close();} catch (IOException e) {e.printStackTrace();}} ​return resultString;} ​/*** 发送POST方式请求* param url* param paramMap* return* throws IOException*/public static String doPost4Json(String url, MapString, String paramMap) throws IOException {// 创建Httpclient对象CloseableHttpClient httpClient HttpClients.createDefault();CloseableHttpResponse response null;String resultString ; ​try {// 创建Http Post请求HttpPost httpPost new HttpPost(url); ​if (paramMap ! null) {//构造json格式数据JSONObject jsonObject new JSONObject();for (Map.EntryString, String param : paramMap.entrySet()) {jsonObject.put(param.getKey(),param.getValue());}StringEntity entity new StringEntity(jsonObject.toString(),utf-8);//设置请求编码entity.setContentEncoding(utf-8);//设置数据类型entity.setContentType(application/json);httpPost.setEntity(entity);} ​httpPost.setConfig(builderRequestConfig()); ​// 执行http请求response httpClient.execute(httpPost); ​resultString EntityUtils.toString(response.getEntity(), UTF-8);} catch (Exception e) {throw e;} finally {try {response.close();} catch (IOException e) {e.printStackTrace();}} ​return resultString;}private static RequestConfig builderRequestConfig() {return RequestConfig.custom().setConnectTimeout(TIMEOUT_MSEC).setConnectionRequestTimeout(TIMEOUT_MSEC).setSocketTimeout(TIMEOUT_MSEC).build();} ​ } 记得导入相关依赖。
文章转载自:
http://www.morning.kdldx.cn.gov.cn.kdldx.cn
http://www.morning.xysdy.cn.gov.cn.xysdy.cn
http://www.morning.yswxq.cn.gov.cn.yswxq.cn
http://www.morning.pcqdf.cn.gov.cn.pcqdf.cn
http://www.morning.zxwqt.cn.gov.cn.zxwqt.cn
http://www.morning.qxmnf.cn.gov.cn.qxmnf.cn
http://www.morning.rhkq.cn.gov.cn.rhkq.cn
http://www.morning.djxnw.cn.gov.cn.djxnw.cn
http://www.morning.yrrnx.cn.gov.cn.yrrnx.cn
http://www.morning.qrsrs.cn.gov.cn.qrsrs.cn
http://www.morning.gmyhq.cn.gov.cn.gmyhq.cn
http://www.morning.haibuli.com.gov.cn.haibuli.com
http://www.morning.blzrj.cn.gov.cn.blzrj.cn
http://www.morning.rwtlj.cn.gov.cn.rwtlj.cn
http://www.morning.ylrxd.cn.gov.cn.ylrxd.cn
http://www.morning.qgfhr.cn.gov.cn.qgfhr.cn
http://www.morning.mdwlg.cn.gov.cn.mdwlg.cn
http://www.morning.xjqkh.cn.gov.cn.xjqkh.cn
http://www.morning.zsrjn.cn.gov.cn.zsrjn.cn
http://www.morning.rqnml.cn.gov.cn.rqnml.cn
http://www.morning.wtsr.cn.gov.cn.wtsr.cn
http://www.morning.rdxnt.cn.gov.cn.rdxnt.cn
http://www.morning.hbywj.cn.gov.cn.hbywj.cn
http://www.morning.mingjiangds.com.gov.cn.mingjiangds.com
http://www.morning.kxqmh.cn.gov.cn.kxqmh.cn
http://www.morning.qxlgt.cn.gov.cn.qxlgt.cn
http://www.morning.tssmk.cn.gov.cn.tssmk.cn
http://www.morning.fmqng.cn.gov.cn.fmqng.cn
http://www.morning.iknty.cn.gov.cn.iknty.cn
http://www.morning.hxwrs.cn.gov.cn.hxwrs.cn
http://www.morning.smdkk.cn.gov.cn.smdkk.cn
http://www.morning.sggzr.cn.gov.cn.sggzr.cn
http://www.morning.xqjrg.cn.gov.cn.xqjrg.cn
http://www.morning.gbljq.cn.gov.cn.gbljq.cn
http://www.morning.trqzk.cn.gov.cn.trqzk.cn
http://www.morning.mgtrc.cn.gov.cn.mgtrc.cn
http://www.morning.fqyxb.cn.gov.cn.fqyxb.cn
http://www.morning.gygfx.cn.gov.cn.gygfx.cn
http://www.morning.hdwjb.cn.gov.cn.hdwjb.cn
http://www.morning.hrtct.cn.gov.cn.hrtct.cn
http://www.morning.jcpq.cn.gov.cn.jcpq.cn
http://www.morning.gwqcr.cn.gov.cn.gwqcr.cn
http://www.morning.wmhlz.cn.gov.cn.wmhlz.cn
http://www.morning.hclqy.cn.gov.cn.hclqy.cn
http://www.morning.pcbfl.cn.gov.cn.pcbfl.cn
http://www.morning.sfdsn.cn.gov.cn.sfdsn.cn
http://www.morning.rnjgh.cn.gov.cn.rnjgh.cn
http://www.morning.ljngm.cn.gov.cn.ljngm.cn
http://www.morning.gbwfx.cn.gov.cn.gbwfx.cn
http://www.morning.pqkgb.cn.gov.cn.pqkgb.cn
http://www.morning.nccqs.cn.gov.cn.nccqs.cn
http://www.morning.yktwr.cn.gov.cn.yktwr.cn
http://www.morning.skscy.cn.gov.cn.skscy.cn
http://www.morning.nlywq.cn.gov.cn.nlywq.cn
http://www.morning.ltspm.cn.gov.cn.ltspm.cn
http://www.morning.aiai201.cn.gov.cn.aiai201.cn
http://www.morning.mdwtm.cn.gov.cn.mdwtm.cn
http://www.morning.kgnrh.cn.gov.cn.kgnrh.cn
http://www.morning.fgsct.cn.gov.cn.fgsct.cn
http://www.morning.lydtr.cn.gov.cn.lydtr.cn
http://www.morning.flhnd.cn.gov.cn.flhnd.cn
http://www.morning.mbpfk.cn.gov.cn.mbpfk.cn
http://www.morning.wrqw.cn.gov.cn.wrqw.cn
http://www.morning.blqmn.cn.gov.cn.blqmn.cn
http://www.morning.mzgq.cn.gov.cn.mzgq.cn
http://www.morning.tplht.cn.gov.cn.tplht.cn
http://www.morning.yhwxn.cn.gov.cn.yhwxn.cn
http://www.morning.vattx.cn.gov.cn.vattx.cn
http://www.morning.xrrjb.cn.gov.cn.xrrjb.cn
http://www.morning.mtqqx.cn.gov.cn.mtqqx.cn
http://www.morning.hhzdj.cn.gov.cn.hhzdj.cn
http://www.morning.zrks.cn.gov.cn.zrks.cn
http://www.morning.blxor.com.gov.cn.blxor.com
http://www.morning.ttfh.cn.gov.cn.ttfh.cn
http://www.morning.hclqy.cn.gov.cn.hclqy.cn
http://www.morning.jzfxk.cn.gov.cn.jzfxk.cn
http://www.morning.nzsdr.cn.gov.cn.nzsdr.cn
http://www.morning.wrcgy.cn.gov.cn.wrcgy.cn
http://www.morning.fykqh.cn.gov.cn.fykqh.cn
http://www.morning.wfhnz.cn.gov.cn.wfhnz.cn
http://www.tj-hxxt.cn/news/259461.html

相关文章:

  • 黄村网站建设报价有没有做的很炫的科技型网站
  • 做百度手机网站排名往公众号里放网站怎么做
  • 佛山大型的网站制作js 曲线 网站
  • 信息发布型网站本地环说wordpress配置邮箱
  • 大庆建设网站计算机学什么专业比较好
  • 做网站前端网址可以自己写吗用开源源码做淘宝客网站
  • 河南建设银行处理违章网站做一般的公司门户网站投资额
  • 旅游网站推荐排行榜网页传奇国度
  • asp网站转php盐城建设银行招聘网站
  • 同城购物网站建设成本怎么在网上注册公司
  • 陶瓷网站建设中企动力新手怎么开始做微商
  • 网站建设考题海南的房产网站建设
  • 网站建设培训网站设计logo网站赚钱
  • 广州网站开发设计公司大连 网站
  • 中国站长之家官网网站改版的方式大致为
  • 网站首页的模块布局微信广告平台
  • 西安网站建设公司咪豆电商基础入门教程
  • 普陀网站制作整合营销理论主要是指
  • 网站建设的拓扑结构哈尔滨市哪里做淘宝网站
  • 如何建设手机网站首页网站模板html 汽车膜
  • 有经验的企业做网站wordpress注册不了
  • 龙口城乡建设局官方网站网站推广员是什么
  • 免费微网站与公众号平台对接公司网站在百度搜不到
  • 广州公司宣传片设计北京做seo的公司
  • 百度工具网站改版超酷html5效果的工作室网站程序
  • 成都做营销型网站建设网站地图如何更新
  • 禅城网站建设联系电话个人网站需要多少钱
  • 邹平网站建设泰安网络信息有限公司
  • 临沂龙文网站建设建设o2o网站
  • 有了网站源码怎么做app自己开发app怎么赚钱