美文网首页
【Android】网络请求之OkHttp笔记

【Android】网络请求之OkHttp笔记

作者: 汴城码农 | 来源:发表于2021-10-29 18:40 被阅读0次

本人初学,记录笔记防止遗忘。

1,请求网络权限 ,在AndroidManifest.xml

    <uses-permission android:name="android.permission.INTERNET" />

2,导入引用库

    implementation("com.squareup.okhttp3:okhttp:4.9.2")

3,请求

第一种,同步执行,所以放入子线程执行
    private void OkHttpDemo(){
        new Thread(new Runnable(){
            public void run(){
                try{
                    OkHttpClient client = new OkHttpClient();

                    RequestBody formBody = new FormBody.Builder()
                            .add("client", "ios")
                            .add("type", "1")
                            .add("account", "555")
                            .add("password", "123456")
                            .add("1234", "systems")

                            .build();
                    Request request = new Request.Builder()
                            .url("https://t.fc1111.com/api/user/login")
                            .post(formBody)
                            .build();

                    Response response = client.newCall(request).execute();
                    String data = response.body().string();

                    System.out.println("=======" + data);

                }catch(Exception e){
                    e.printStackTrace();
                    System.out.println("=======");

                }
            }
        }).start();
    }
第二种,应该是OkHttp帮你做了异步操作,可以直接调用,不用开辟线程
                    OkHttpClient client = new OkHttpClient();

                    RequestBody formBody = new FormBody.Builder()
                            .add("client", "ios")
                            .add("type", "1")
                            .add("account", "555")
                            .add("password", "123456")
                            .add("1234", "systems")

                            .build();
                    Request request = new Request.Builder()
                            .url("https://t.fc1111.com/api/user/login")
                            .post(formBody)
                            .build();


                    client.newCall(request).enqueue(new Callback() {
                        @Override
                        public void onFailure(@NotNull Call call, @NotNull IOException e) {
                            System.out.println("=======+++++" +e);

                        }

                        @Override
                        public void onResponse(@NotNull Call call, @NotNull Response response) throws IOException {
                            String data = response.body().string();
                            System.out.println("=======" + data);

                        }
                    });

相关文章

网友评论

      本文标题:【Android】网络请求之OkHttp笔记

      本文链接:https://www.haomeiwen.com/subject/cfxwaltx.html