先上移动端代码:retrofit+rxjava
Map<String, String> map = new HashMap<>();
File file = new File(Environment.getExternalStorageDirectory(), "DebugData/pic.jpeg");
RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), file);
MultipartBody.Part part = MultipartBody.Part.createFormData("file", file.getName(), requestFile);
OkHttpClient client = new OkHttpClient.Builder().
connectTimeout(60, TimeUnit.SECONDS).
readTimeout(60, TimeUnit.SECONDS).
writeTimeout(60, TimeUnit.SECONDS).build();
Retrofit retrofit = new Retrofit.Builder().baseUrl("https://shb2058.free.ngrok.cc")
.addConverterFactory(StringConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.client(client)
.build();
RetrofitInterface httpApiS = retrofit.create(RetrofitInterface.class);
httpApiS.updateImage(part)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<String>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull String loginBean) {
Log.e("返回的数据", loginBean);
TextView tt = (TextView) findViewById(R.id.ttt);
tt.setText(loginBean);
}
@Override
public void onError(@NonNull Throwable e) {
}
@Override
public void onComplete() {
}
}); Map<String, Strin