Я сделал приложение в Ionic V4, а затем собрал его, используя плагин cordova
(не конденсатор). Первая страница моего приложения - логин, где я получаю значения из полей формы и отправляю их методу логина, где я делаю POST
вызов на сервер.
loginUrl = 'http://localhost:3000/login';
errorLog: any;
login(form) {
const user = form.values;
this.httpClient.post(this.loginUrl, user).subscribe( response => {
this.toastController.create({message:'Login Successful', duration: 1000}).then(toast=> toast.present());
}, error => {
this.errorLog = error;
this.toastController.create({message:'Some Error Occured', duration: 1000}).then(toast=> toast.present());
})
}
Кроме того, я печатаю этот журнал ошибок на странице входа в систему, потому что, как только мы делаем сборку, ее сложно отладить на устройстве с помощью Android Studio или Xcode
.
Итак, я печатаю журнал ошибок вот так
<h3>{{errorLog | json}}</h3>
Я не получаю сообщение об ошибке POST
в случае запуска приложения в веб-браузере, а также в Android. Ошибка в iOS при попытке выполнить сборку и использование Xcode
, развернутого на моем iPad.
Работает нормально в GET HTTP
вызовах, потому что ранее я тестировал GET HTTP
вызовы в тех же, но не работает в POST HTTP
вызовах.
Возвращается 500 внутренняя ошибка сервера. Ошибка объекта выглядит как
{
"statusText": "OK",
"status": 500,
"url": "http://localhost:3000/login",
"ok": false,
"name": 'HttpErrorResponse',
"message": "Http failure response for http://localhost:3000/login: 500 OK",
...
}
Как я делаю сборку
ionic build --prod --release
ionic cordova platform remove ios
(если платформа уже существует).
ionic cordova platform add ios
ionic cordova prepare ios
Затем я открываю ту же папку ios
в Xcode, выбираю учетную запись разработчика, подключаю мой iPad и запускаю ее.