Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

studioidan/HttpAgent

Repository files navigation

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.
 }
 });

About

super simple library to manage http requests.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /