12
12
import okhttp3 .OkHttpClient ;
13
13
import okhttp3 .Request ;
14
14
import okhttp3 .RequestBody ;
15
+ import okio .BufferedSource ;
16
+ import okio .ByteString ;
15
17
16
18
// todo: pre/post events, progress events
17
19
18
20
public class AsyncHttpClient {
19
21
20
22
private OkHttpClient okHttpClient ;
21
- public static MediaType MEDIA_TYPE_JSON = MediaType . parse ( "application/json" ) ;
23
+ public static String MEDIA_TYPE_JSON = "application/json" ;
22
24
23
25
public AsyncHttpClient () {
24
26
okHttpClient = new OkHttpClient .Builder ()
@@ -70,24 +72,30 @@ public void get(String url, AbsCallback callback) {
70
72
get (url , null , callback );
71
73
}
72
74
73
- public void post (String url , RequestParams requestParams , RequestHeaders requestHeaders , String body , AbsCallback callback ) {
75
+ public void post (String url , RequestHeaders requestHeaders , RequestParams requestParams , RequestBody requestBody , AbsCallback callback ) {
74
76
url = createUrlWithRequestParams (url , requestParams );
75
77
76
78
Request .Builder requestBuilder = createBuilderWithHeaders (url , requestHeaders );
77
79
78
- RequestBody requestBody = RequestBody .create (MEDIA_TYPE_JSON , body );
79
-
80
80
Request request = requestBuilder .post (requestBody ).build ();
81
81
okHttpClient .newCall (request ).enqueue (callback );
82
82
}
83
83
84
- public void post (String url , RequestParams requestParams , RequestHeaders requestHeaders , File file , AbsCallback callback ) {
85
- Request .Builder requestBuilder = createBuilderWithHeaders (url , requestHeaders );
84
+ public void post (String url , RequestHeaders requestHeaders , RequestParams requestParams , String body , AbsCallback callback ) {
85
+ RequestBody requestBody = RequestBody .create (body , MediaType .get (MEDIA_TYPE_JSON ));
86
+ this .post (url , requestHeaders , requestParams , requestBody , callback );
87
+ }
86
88
87
- RequestBody requestBody = RequestBody .create (MEDIA_TYPE_JSON , file );
89
+ public void post (String url , RequestHeaders requestHeaders , RequestParams requestParams , File file , MediaType mediaType , AbsCallback callback ) {
90
+ RequestBody requestBody = RequestBody .create (file , mediaType );
88
91
89
- Request request = requestBuilder .post (requestBody ).build ();
90
- okHttpClient .newCall (request ).enqueue (callback );
92
+ this .post (url , requestHeaders , requestParams , requestBody , callback );
93
+ }
94
+
95
+ public void post (String url , RequestHeaders requestHeaders , RequestParams requestParams , ByteString source , MediaType mediaType , AbsCallback callback ) {
96
+ RequestBody requestBody = RequestBody .create (source , mediaType );
97
+
98
+ this .post (url , requestHeaders , requestParams , requestBody , callback );
91
99
}
92
100
93
101
public void post (String url , AbsCallback callback ) {
@@ -98,22 +106,22 @@ public void post(String url, String body, AbsCallback callback) {
98
106
this .post (url , null , null , body , callback );
99
107
}
100
108
101
- public void post (String url , File body , AbsCallback callback ) {
102
- this .post (url , null , null , body , callback );
109
+ public void post (String url , File file , MediaType mediaType , AbsCallback callback ) {
110
+ this .post (url , null , null , file , mediaType , callback );
103
111
}
104
112
105
113
public void post (String url , RequestParams requestParams , String body , AbsCallback callback ) {
106
- this .post (url , requestParams , null , body , callback );
114
+ this .post (url , null , requestParams , body , callback );
107
115
}
108
116
109
- public void post (String url , RequestParams requestParams , File body , AbsCallback callback ) {
110
- this .post (url , requestParams , null , body , callback );
117
+ public void post (String url , RequestParams requestParams , File body , MediaType mediaType , AbsCallback callback ) {
118
+ this .post (url , null , requestParams , body , mediaType , callback );
111
119
}
112
120
113
121
public void delete (String url , RequestHeaders requestHeaders , String body , AbsCallback callback ) {
114
122
Request .Builder requestBuilder = createBuilderWithHeaders (url , requestHeaders );
115
123
116
- RequestBody requestBody = RequestBody .create (MEDIA_TYPE_JSON , body );
124
+ RequestBody requestBody = RequestBody .create (body , MediaType . get ( MEDIA_TYPE_JSON ) );
117
125
118
126
Request request = requestBuilder .delete (requestBody ).build ();
119
127
okHttpClient .newCall (request ).enqueue (callback );
@@ -122,7 +130,7 @@ public void delete(String url, RequestHeaders requestHeaders, String body, AbsCa
122
130
public void patch (String url , RequestHeaders requestHeaders , String body , AbsCallback callback ) {
123
131
Request .Builder requestBuilder = createBuilderWithHeaders (url , requestHeaders );
124
132
125
- RequestBody requestBody = RequestBody .create (MEDIA_TYPE_JSON , body );
133
+ RequestBody requestBody = RequestBody .create (body , MediaType . get ( MEDIA_TYPE_JSON ) );
126
134
127
135
Request request = requestBuilder .patch (requestBody ).build ();
128
136
okHttpClient .newCall (request ).enqueue (callback );
0 commit comments