简体   繁体   English

Android如何使用改型传递模态类和参数数组

[英]Android how to pass array of modal class and parameters using retrofit

//Here is a data for the modal class //这里是模态类的数据

busi_data[otp_verified]: 
busi_data[pan]: 
busi_data[gstin]: 
busi_data[doc]: pan
busi_data[business_name]: 
busi_data[entity_type]: 
busi_data[mobile]: 
busi_data[customer_email]: 
busi_data[mode]: 
busi_data[ses_email]: 
busi_data[pluskey]: 
busi_data[otp_auth]: 
busi_data[otp]: 
operation: 

I am using retrofit for sending data to server.i want to pass a modal class as a parameter.please help to solve. 我正在使用改造将数据发送到服务器。我想将模式类作为参数传递。请帮助解决。

Hello You can user below code for pass model class in api 您好,您可以在api中使用以下代码作为传递模型类的代码

@POST(Constants.ApiMethods.GET_LOGIN)
Flowable<GenericModel<LoginResponse>> doLogin(@Body RequestBody requestBody);


    Flowable<GenericModel<LoginResponse>> getusers = mRestApis.doLogin(Utility.getRequest(HobbsRepairApp.getGsonWithExpose().toJson(LoginRequest)));
    getusers.subscribeOn(Schedulers.newThread())
            .observeOn(AndroidSchedulers.mainThread())
            .onErrorReturn(throwable -> {
                String message = ((HttpException) throwable).response().errorBody().string();
                GenericModel<LoginResponse> userBaseResponse = HobbsRepairApp.getGsonWithExpose().fromJson(message, GenericModel.class);
                return userBaseResponse;                })
            .subscribe(responsData -> {
                if (responsData != null) {
                    GenericModel<LoginResponse> responseGenericModel = responsData;
                    if ((responseGenericModel.getStatus() == 200) && (responseGenericModel.getResponse() != null)) {
                        LoginResponse loginResponse = responseGenericModel.getResponseModel(LoginResponse.class);
                        loginResponse.setMessage(responseGenericModel.getMessage());
                        mEventBus.post(loginResponse);
                    } else {
                        mEventBus.post(new APIError(105, responseGenericModel.getMessage()));
                    }
                }
            });


public static RequestBody getRequest(String reqString) {
    MediaType mediaType = MediaType.parse("application/json");
    return RequestBody.create(mediaType, reqString);
}

 public static Gson getGsonWithExpose() {
    if (mGson != null) {
        mGson = null;
    }
    mGson = new GsonBuilder().setLenient().excludeFieldsWithoutExposeAnnotation().create();
    return mGson;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM