okhttp3.0的工具类

原创 2016年08月30日 15:56:29

异步post请求 

 1.1//异步请求post    提交 键值对数据(key_value数据)

public void postAyncHttp(String url,Map<String,String> data) {

      /*  RequestBody formBody = new FormBody.Builder()
                .add("userName", "10")
                .add("loginPwd","2323")

                .build();*/


        FormBody.Builder builder = new FormBody.Builder();
          for (Map.Entry<String,String> item :data.entrySet()){
              builder.add(item.getKey(),item.getValue());
          }
        FormBody formBody = builder.build();
        Request request = new Request.Builder()
                .url(url)
                .post(formBody)
                .build();
        Call call = client.newCall(request);
        call.enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                Log.i("msg",e.getMessage());
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                String str = response.body().string();
                Log.i("wangshu", str);

                new Thread(new Runnable() {
                    @Override
                    public void run() {
                        Toast.makeText(MyApp.getContext(), "请求成功", Toast.LENGTH_SHORT).show();
                    }
                });
            }

        });

    }

1.2异步post请求 提交 json数据

  public static final MediaType JSON
            = MediaType.parse("application/json; charset=utf-8");

    private OkHttpClient client = new OkHttpClient.Builder()
            .connectTimeout(5, TimeUnit.SECONDS)
            .readTimeout(5, TimeUnit.SECONDS)
            .build();


    public String post(String url, String json) throws IOException {
        RequestBody body = RequestBody.create(JSON, json);
        Request request = new Request.Builder()
                .url(url)
                .post(body)
                .build();
       client.newCall(request).enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {

            }
        });

同步post请求

2..1//同步post请求  (参数)提交json数据(因为是同步请求时放在子线程里)

  public static final MediaType JSON
            = MediaType.parse("application/json; charset=utf-8");

    private OkHttpClient client = new OkHttpClient.Builder()
//            .sslSocketFactory(createSSLSocketFactory())
//            .hostnameVerifier(new TrustAllHostnameVerifier())
            .connectTimeout(5, TimeUnit.SECONDS)
            .readTimeout(5, TimeUnit.SECONDS)
            .build();


    public String post(String url, String json) throws IOException {
        RequestBody body = RequestBody.create(JSON, json);
        Request request = new Request.Builder()
                .url(url)
                .post(body)
                .build();
        Response response = client.newCall(request).execute();
        if (response.isSuccessful()) {
            return response.body().string();
        } else {
            return "";
        }
    }
例如这样调用上面的2.1方法:
JSONObject req = new JSONObject();
req.put("pageIndex", page);
req.put("pageSize", pagesize);
String response = OKhttpHelper.getInstance().post(GET_LIVELIST, req.toString());



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

以OKHttp为基础封装网络请求工具类

特点: 1)支持SPDY协议,共享一个socket来处理同一个服务器的所有请求。 2)无缝支持GZIP,来减少数据流量。 3)缓存相应数据来减少重复的网络请求。   网络协议: SPDY(...

okhttp工具类

需要关联的包 compile 'com.squareup.okhttp3:okhttp:3.4.2' okhttp工具类: package com.hhzmy.httputil; import a...

Okhttp 工具类

package bwie.mylibrary;import com.google.gson.Gson; import java.io.IOException; import java.util.Map...

android中Okhttp框架进行网络请求的工具类()

package com.example.utils;import java.io.File; import java.io.IOException; import java.util.ArrayL...

超简单的okhttp封装工具类(上)

前言:提及访问网络,很自然的会用到okHttp,虽然okhttp已经封装的比较完善, 调用也比较方便,但对于向我这样比较懒的人,okhttp的调用还是略显复杂, 每次都要写同样重复的代码,简直不能忍受...

基于鸿洋okhttp封装工具类okhttputils 返回数据回调封装

简介okhttputils 是csdn 鸿洋大神基于okhttp网络请求进行的二次封装基本请求格式如下OkHttpUtils .get() .url(url) .addParams("username...

工具类 3.0 获取版本 appKey

public class ExampleUtil { public static final String PREFS_NAME = “JPUSH_EXAMPLE”; public...

Xutils3.0请求网络数据工具类

package com.demo.xutils.Utils; import android.widget.Toast; import org.xutils.common.Callback; imp...
  • oAiTan
  • oAiTan
  • 2016-03-01 16:57
  • 2694
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)