不学网

 找回密码
 立即注册

只需一步,快速开始

手机号码,快捷登录

查看: 101|回复: 0

[java] 安卓中zhy的okhttputils和fastjson进行网络请求

[复制链接]
rain1994 发表于 2018-4-7 21:13:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
1.添加依赖
compile 'com.zhy:okhttputils:2.6.2'
compile 'com.alibaba:fastjson:1.1.56.android'
2.自定义application用于初始化OkHttpClient
public class MyApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        /**
         * 初始化OkHttpUtils
         */
        initOkHttpClient();
    }

    private void initOkHttpClient() {
        OkHttpClient okHttpClient = new OkHttpClient.Builder()
                .connectTimeout(10000L, TimeUnit.MILLISECONDS) //链接超时
                .readTimeout(10000L, TimeUnit.MILLISECONDS) //读取超时
                .build(); //其他配置

        OkHttpUtils.initClient(okHttpClient);
    }
}
3.在AndroidManifest.xml增加网络权限,application增加属性name为我们自定义的MyApplication
<uses-permission android:name="android.permission.INTERNET"/>
android:name=".MyApplication"

4.组织请求数据
//实体类
TestBean testBean=new TestBean();
testBean.setName("aa");
testBean.setPassword(123456);
//实体类到json字符串
String json=JSON.toJSONString(testBean);

5.发送请求得到返回数据
OkHttpUtils.postString()
                .url(url)
                .mediaType(MediaType.parse("application/json; charset=utf-8"))
                .content(json)
                .build()
                .execute(new StringCallback() {
                    @Override
                    public void onError(Call call, Exception e, int id) {
                        tv.setText("请求失败");
                    }

                    @Override
                    public void onResponse(String response, int id) {
                        //json字符串到实体类
                        TestBean testBean1=JSON.parseObject(response,TestBean.class);
                        tv.setText("name="+testBean1.getName());
                    }
                });

1.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|不学网

GMT+8, 2018-4-20 20:55

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表