#android #laravel #apache #flutter #http
#Android #laravel #apache #флаттер #http
Вопрос:
Я пытаюсь отправить post-запрос из моего мобильного приложения flutter в API laravel, размещенный на ionos.
Проблема, с которой я сталкиваюсь, заключается в том, что на некоторых смартфонах Android при отправке формы иногда загрузчик прогресса загружается неопределенно долго без отображения ошибок, а иногда он работает немедленно.
Я увеличил время ожидания файла int .htaccess моего приложения laravel
<ifModule mod_env.c>
SetEnv KeepAlive On
SetEnv KeepAliveTimeout 100
SetEnv MaxKeepAliveRequests 500
</ifModule>
<ifModule mod_headers.c>
Header unset Connection
Header set Connection keep-alive
Header unset Keep-Alive
Header set Keep-Alive timeout=100,max=500
</ifModule>
Но проблема сохраняется, она успешно работает на некоторых устройствах (самые последние смартфоны), а иногда нет на других.
Пожалуйста, помогите мне, я сталкиваюсь с проблемой с 2 дней
Код flutter / dart
sendHouse() async {
String url = ServerConfigs.api_url "/house";
final Map<String, dynamic> house = new Map<String, dynamic>();
house['name'] = name;
house['img'] = image.path.split("/").last;
List<int> imageBytes = image.readAsBytesSync();
house['img64'] = Base64Codec().encode(imageBytes);
house['lat'] = lat;
house['lon'] = lon;
final response = await http.post(url, headers: {
'Accept': 'application/json',
'Authorization': 'Bearer ' ServerConfigs.bearer_token
}, body: {
"data": house
});
var data = await json.decode(response.body);
if (response.statusCode == 200) {
emitSuccess();
} else {
print(data);
print(response.statusCode);
emitFailure();
}
}
Комментарии:
1. Есть ли какая-либо ошибка в
laravel.log
файле? Можете ли вы также опубликовать код flutter / dart о том, как создается post?2. @Tpojka в laravel ничего нет. журнал, но я обнаружил в журналах сервера связанные запросы с кодом ошибки 413, его внешний вид соответствует файлу в данных тела. Я добавил код flutter / dart
3. Что у вас
response status code
?4. @SaifulIslam
response status code is 413
, я нахожусь на сервере Apache с общим хостингом 1 и 15. Если код состояния ответа равен 413, то проблема возникает на стороне сервера. возьмите добычу по этой ссылке. developer.mozilla.org/en-US/docs/Web/HTTP/Status/413
Ответ №1:
Я добавил функцию сжатия к изображению в моем коде dart перед загрузкой, и она решена.