Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 改装2动态设置零件参数名称_Android_Post_Retrofit2_Multipartform Data - Fatal编程技术网

Android 改装2动态设置零件参数名称

Android 改装2动态设置零件参数名称,android,post,retrofit2,multipartform-data,Android,Post,Retrofit2,Multipartform Data,我可以使用改型2动态地将参数名设置为多部分请求的一部分吗?我要寻找的是 @Multipart @POST(UPDATE_PROFILE) Call<SignUp> sendUpdateProfileRequest( @Part("profile_img") RequestBody img_file, @Part("DYNAMIC_PARAM_NAME") RequestBody first_name,...); @Multipart

我可以使用改型2动态地将参数名设置为多部分请求的一部分吗?我要寻找的是

@Multipart
@POST(UPDATE_PROFILE)
Call<SignUp> sendUpdateProfileRequest(
            @Part("profile_img") RequestBody img_file,
            @Part("DYNAMIC_PARAM_NAME") RequestBody first_name,...);
@Multipart
@职位(更新个人资料)
调用sendUpdateProfileRequest(
@部分(“配置文件img”)请求主体img文件,
@部分(“动态参数名称”)请求主体名称;
当动态参数名称类似于id_seller/id_buyer/id_buyer时,其余参数和请求URL保持不变


调用时,我可以在活动或片段中实现此类功能吗?

您可以尝试改型的
@PartMap
注释,而不是
@Part
。只需更改API接口,如下所示

@Multipart
@POST(UPDATE_PROFILE)
Call<SignUp> sendUpdateProfileRequest(
        @Part("profile_img") RequestBody img_file,
        @PartMap Map<String, RequestBody> params,  /* notice the change here */
        ...
);
@Multipart
@职位(更新个人资料)
调用sendUpdateProfileRequest(
@部分(“配置文件img”)请求主体img文件,
@PartMap参数,/*请注意此处的更改*/
...
);
像这样使用它

... // code
Map<String, RequestBody> params = new HashMap<>();

// prepare RequestBody
RequestBody someDataBody = ....;

// add it Map object
params.put("DYNAMIC_PARAM_NAME", someDataBody);

// pass it to request
FooApiInterface api = ....;

Call<FooResponse> call = api.sendUpdateProfileRequest(imageFile, params);
call.enqueue({/* implement response listener */});
..//代码
Map params=新的HashMap();
//准备请求主体
RequestBody someDataBody=。。。。;
//添加它映射对象
参数put(“动态参数名”,someDataBody);
//传给请求
FooApiInterface api=。。。。;
Call Call=api.sendUpdateProfileRequest(图像文件,参数);
enqueue({/*实现响应侦听器*/});
这应该对你有好处