Skip to content
super simple library to manage http requests.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea
app
gradle/wrapper
httpagent
.gitignore
README.md
build.gradle
gradle.properties
gradlew
gradlew.bat
settings.gradle

README.md

HttpAgent

super simple library to manage http requests.

Gradle

dependencies {
    implementation 'com.studioidan.httpagent:httpagent:1.0.16@aar'
}

Now see how easy it becomes with HttpAgent!

Get Request

HttpAgent.get("www.example.com/api/books")
                    .goJson(new JsonCallback() {
                        @Override
                        protected void onDone(boolean success, JSONObject jsonObject) {
                            
                        }
                    });

or you can go jsonArray like so

HttpAgent.get("www.example.com/api/books")
                    .goJsonArray(new JsonArrayCallback() {
                        @Override
                        protected void onDone(boolean success, JSONArray jsonArray) {
                            
                        }
                    });

Need to add url parameters? no problem!

HttpAgent.get("www.example.com/api/books")
                    .queryParams("key_1","value_1","key_2","value_2","key_N","value_N")
                    .goJsonArray(new JsonArrayCallback() {
                        @Override
                        protected void onDone(boolean success, JSONArray jsonArray) {
                            
                        }
                    });

Post? Put? Delete? of course...

HttpAgent.post("www.example.com/api/books");
HttpAgent.put("www.example.com/api/books");
HttpAgent.delete("www.example.com/api/books")

Adding body is also simple...

HttpAgent.post("www.example.com/api/books")
                    .queryParams("key_1","value_1","key_2","value_2","key_N","value_N")
                    .withBody("{name:popapp ,age:27}")
                    .goJsonArray(new JsonArrayCallback() {
                        @Override
                        protected void onDone(boolean success, JSONArray jsonArray) {

                        }
                    });

Or even more simple...

HttpAgent.post("www.example.com/api/books")
                    .queryParams("key_1","value_1","key_2","value_2","key_N","value_N")
                    .withBody("key_1","value_1","key_2","value_2","key_N","value_N") // will be converted to json
                    .goJsonArray(new JsonArrayCallback() {
                        @Override
                        protected void onDone(boolean success, JSONArray jsonArray) {

                        }
                    });

Don't forget the headers...

HttpAgent.get("http://192.168.88.253/Video/inputs/channels/1")
                        .headers("Authorization", "Basic YWRtaW46P3V5YFZhNzAw", "Content-Type", "application/json")
                        .goString(new StringCallback() {
                            @Override
                            protected void onDone(boolean success, String stringResults) {
                                Log.d(TAG, stringResults);
                            }
                        });

Any request can be made with one of the following callbacks:

Get a string results

goString(new StringCallback() {
                        @Override
                        protected void onDone(boolean success, String results) {
                            
                        }
                    })

Get Json results

goJson(new JsonCallback() {
                        @Override
                        protected void onDone(boolean success, JSONObject jsonObject) {
                            
                        }
                    })

Get JsonArray results

goJsonArray(new JsonArrayCallback() {
                        @Override
                        protected void onDone(boolean success, JSONArray jsonArray) {

                        }
                    });

Get no results, Just send the request

go(new SuccessCallback() {
                        @Override
                        protected void onDone(boolean success) {
                            
                        }
                    })

You also have access to those on any callback

HttpAgent.post("www.example.com/api/books")
                    .queryParams("key_1","value_1","key_2","value_2","key_N","value_N")
                    .withBody("{name:popapp ,age:27}")
                    .goJson(new JsonCallback() {
                        @Override
                        protected void onDone(boolean success, JSONObject jsonObject) {
                            getErrorMessage(); //returns error message if exists.
                            getResponseCode(); // well, it's obvious...
                            getStringResults(); // returns results as as string.
                        }
                    });
You can’t perform that action at this time.