I am an android developer. I develop an application. I have a problem. I want to send string array data with okhttp multipart data. But I can not do it. Because "addFormDataPart" method is required string variable. I can not use that method(addFormDataPart). I want to send string array data. What can I do?
Please help me.
My source code:
private void String sendData(String serverURL, String[] arrayData){
RequestBody requestBody;
requestBody = new MultipartBuilder()
.type(MultipartBuilder.FORM)
.addFormDataPart("arraydata", arrayData)
.build();
}
void String sendData(String serverURL, String[] arrayData){
String commaSeparatedValues = TextUtils.join(",", arrayData);
multiPartBuilder.addFormDataPart("key[]", commaSeparatedValues);
}
Note: the key here is important it should have "[]"
Please try this
private void String sendData(String serverURL, String[] arrayData){
RequestBody requestBody;
requestBody = new MultipartBuilder()
.type(MultipartBuilder.FORM)
.addFormDataPart("arraydata", getToString(arrayData))
.build();
}
public String getToString(String[] arrayData) {
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0 ; i < arrayData.length; i++) {
stringBuilder.append(arrayData[i]);
if (i < arrayData.length - 1) {
stringBuilder.append(",");
}
}
return stringBuilder.toString();
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With