Я пытаюсь загрузить файл изображения на сервер из приложения Android, которое я разработал, но ответ с сервера был следующим кодом html:Ошибка при загрузке файла изображения на сервер из приложения Android
<!DOCTYPE html>
<html>
<head>
<meta name=“viewport” content=“width=device-width,initial-scale=1”>
<meta charset=“utf-8”>
<title>Application error</title>
<style media=“screen”>
html,body,iframe{
margin:0;
padding:0;
}
html,body{height:100%;
overflow:hidden;}
iframe{width:100%;
height:100%:
border:0;
}
</style>
</head>
</body>
<iframe src=“//www.herokucdn.com/error-pages/application-error.html”> </iframe>
</body>
</html>
следующий код был написан на андроид стороне для загрузки:
final MediaType MEDIA_TYPE_PNG = MediaType.parse("image/png");
RequestBody req = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("userId", "1")
.addFormDataPart("image",sourceFile.getName(), RequestBody.create(MEDIA_TYPE_PNG, sourceFile))
.addFormDataPart("landmark","xyx")
.addFormDataPart("location","234124351245sdfgsdfb")
.build();
Request request = new Request.Builder()
.url("https://cyc-new.herokuapp.com/uploads/img_upload/")
.post(req)
.header("Authorization",credentials)
.build();
Похоже, что ваш сервер не реагирует. Вы пробовали поражать конечную точку сервера (циклический) за пределами кода Java ... например, с помощью ролика или javascript? –
@mrrogers Я не тестировал ** curl **, но я тестировал ** библиотеку запросов Python **, и это было успешным. Вот мой код Python; '' запросы на импорт'' '' из request.auth import HTTPBasicAuth'' '' url = 'https: // cyc-new.herokuapp.com/uploads/img_upload /' '' '' filess = {' image ': open (' a1.png ',' rb ')} '' '' r = request.post (url, data = {' userID ': 5,' landmark ':' test1 ',' location ': 'test2'}, auth = HTTPBasicAuth ('admin', 'admin'), files = filess) '' –