如何为 volley MultipartEntityBuilder 添加多个 Mime 类型
How to add multiple Mime types for volley MultipartEntityBuilder
我必须使用 volley MultipartEntityBuilder 将 image/audio/video/pdf...等文件上传到我的服务器,我正在使用以下代码进行 Mimetype 设置,但出现如下异常
有人可以帮我吗我怎样才能添加多个 Mime 类型?
代码:
/**
*buildMultipartEntity
*/
private void buildMultipartEntity() {
if (mParams != null) {
for (Map.Entry<String, String> entry : mParams.entrySet()) {
mBuilder.addTextBody(entry.getKey(), entry.getValue());
}
}
if (mFileParams != null) {
for (Map.Entry<String, List<File>> entry : mFileParams.entrySet()) {
List<File> listFiles = entry.getValue();
for (File file : listFiles) {
String[] mimeTypes = {"image/*", "application/pdf"};
mBuilder.addBinaryBody(entry.getKey(), file, ContentType.create(String.valueOf(mimeTypes),""),
file.getName());
}
}
}
mBuilder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
}
}
错误:
java.lang.IllegalArgumentException: MIME type may not contain reserved characters
2018-11-29 11:14:52.955 18868-18868/com.karvyinnotech.claimsportal W/System.err: at org.apache.http.util.Args.check(Args.java:36)
2018-11-29 11:14:52.955 18868-18868/com.karvyinnotech.claimsportal W/System.err: at org.apache.http.entity.ContentType.create(ContentType.java:176)
2018-11-29 11:14:52.955 18868-18868/com.karvyinnotech.claimsportal W/System.err: at org.apache.http.entity.ContentType.create(ContentType.java:204)
2018-11-29 11:14:52.955 18868-18868/com.karvyinnotech.claimsportal W/System.err: at com.karvyinnotech.claimsportal.restapi.MultipartAPI.buildMultipartEntity(MultipartAPI
使用 mime 类型 "*/*"
它将接受所有类型的文件
var fileBody = ProgressRequestBody(fileToUpload, "*/*", this)
photos = MultipartBody.Part.createFormData(key, fileToUpload.name, fileBody)
就像在改造中一样,我制作了上面的 RequestBody 对象,它接受任何类型的文件
我必须使用 volley MultipartEntityBuilder 将 image/audio/video/pdf...等文件上传到我的服务器,我正在使用以下代码进行 Mimetype 设置,但出现如下异常
有人可以帮我吗我怎样才能添加多个 Mime 类型?
代码:
/**
*buildMultipartEntity
*/
private void buildMultipartEntity() {
if (mParams != null) {
for (Map.Entry<String, String> entry : mParams.entrySet()) {
mBuilder.addTextBody(entry.getKey(), entry.getValue());
}
}
if (mFileParams != null) {
for (Map.Entry<String, List<File>> entry : mFileParams.entrySet()) {
List<File> listFiles = entry.getValue();
for (File file : listFiles) {
String[] mimeTypes = {"image/*", "application/pdf"};
mBuilder.addBinaryBody(entry.getKey(), file, ContentType.create(String.valueOf(mimeTypes),""),
file.getName());
}
}
}
mBuilder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
}
}
错误:
java.lang.IllegalArgumentException: MIME type may not contain reserved characters
2018-11-29 11:14:52.955 18868-18868/com.karvyinnotech.claimsportal W/System.err: at org.apache.http.util.Args.check(Args.java:36)
2018-11-29 11:14:52.955 18868-18868/com.karvyinnotech.claimsportal W/System.err: at org.apache.http.entity.ContentType.create(ContentType.java:176)
2018-11-29 11:14:52.955 18868-18868/com.karvyinnotech.claimsportal W/System.err: at org.apache.http.entity.ContentType.create(ContentType.java:204)
2018-11-29 11:14:52.955 18868-18868/com.karvyinnotech.claimsportal W/System.err: at com.karvyinnotech.claimsportal.restapi.MultipartAPI.buildMultipartEntity(MultipartAPI
使用 mime 类型 "*/*"
它将接受所有类型的文件
var fileBody = ProgressRequestBody(fileToUpload, "*/*", this)
photos = MultipartBody.Part.createFormData(key, fileToUpload.name, fileBody)
就像在改造中一样,我制作了上面的 RequestBody 对象,它接受任何类型的文件