okhttp,get,post,put,delete 请求
2016-07-08 14:15
405 查看
public static String doGet(String url){ //创建一个Request final Request request = new Request.Builder() .url(url) .build(); return execute(request); } public static String doPost(String url,String reqbody,Map<String,Object> map){ FormEncodingBuilder builder=addParamToBuilder(reqbody, map); RequestBody body = builder.build(); Request request = new Request.Builder() .url(url) .post(body) .build(); return execute(request); } public static String doPut(String url,String reqbody,Map<String,Object> map){ FormEncodingBuilder builder=addParamToBuilder(reqbody, map); RequestBody body = builder.build(); Request request = new Request.Builder() .url(url) .put(body) .build(); return execute(request); } public static String doDelete(String url,String reqbody,Map<String,Object> map){ FormEncodingBuilder builder=addParamToBuilder(reqbody, map); RequestBody body = builder.build(); Request request = new Request.Builder() .url(url) .delete(body) .build(); return execute(request); } public static FormEncodingBuilder addParamToBuilder(String reqbody,Map<String,Object> map){ FormEncodingBuilder builder=new FormEncodingBuilder(); if(!StringUtils.isEmpty(reqbody)){ if(reqbody.startsWith("?")){ reqbody=reqbody.substring(1); } String[] params=reqbody.split("&"); for(int i=0;i<params.length;i++){ if(params[i].equals("")){ continue; } String [] kv=params[i].split("="); builder.add(kv[0], kv[1]); } } if(map!=null){ Iterator<Entry<String,Object>> ite= map.entrySet().iterator(); for(;ite.hasNext();){ Entry<String,Object> kv=ite.next(); builder.add(kv.getKey(), kv.getValue().toString()); } } return builder; } public static String execute(Request request){ try { OkHttpClient client = new OkHttpClient(); Response response = client.newCall(request).execute(); if (response.isSuccessful()) { return response.body().string(); } } catch (IOException e) { e.printStackTrace(); } return "{\"error\":\"fail\"}"; }
相关文章推荐
- java-用HttpURLConnection发送Http请求.
- Android之获取手机上的图片和视频缩略图thumbnails
- android string.xml文件中的整型和string型代替
- Android java 与 javascript互访(相互调用)的方法例子
- android上改变listView的选中颜色
- String.intern
- Prototype源码浅析 String部分(二)
- VBScript 剪贴板抓取URL并在浏览器中打开
- Ruby中的String对象学习笔记
- PostgreSQL ERROR: invalid escape string 解决办法
- 用vbs 实现从剪贴板中抓取一个 URL 然后在浏览器中打开该 Web 站点
- asp获取URL参数的几种方法分析总结[原创]_应用技巧_脚本之家
- 浅谈C++中的string 类型占几个字节
- 标准C++类string的Copy-On-Write技术
- C++实现string存取二进制数据的方法
- C#中string和StingBuilder内存中的区别实例分析
- C#实现在网页中根据url截图并输出到网页的方法
- 详解C++中实现继承string类的MyString类的步骤
- zend framework框架中url大小写问题解决方法
- PHP STRING 陷阱原理说明