ionic $http.post не работает в эмуляторе, но работает в браузере и iPhone
Код ниже работает в браузере и на iPhone 5s, но не в эмуляторе iOS. Я пытаюсь выяснить, эмулятор ли это или что-то в ионном.
Я установил NSAppTransportSecurity в Info.plist, чтобы иметь возможность использовать http
NSAppTransportSecurity NSAllowsArbitraryLoads и код:
accountRepo.register($scope.login.registryCode)
.success(function(data){
accountRepo.user = data;
$scope.hideLoading();
$state.go("setPin");
})
.error(function(err){
console.log(err);
$scope.hideLoading();
alert("Incorrect registry code");
});
и репо
app.factory('accountRepo', function($http) {
return {
token: {},
register: function(registryCode) {
return $http.post("http://localhost:9501/register",
{"registryCode": registryCode} );
},
Параметр err равен нулю при возникновении ошибки. Я ничего не получаю в выводе в Xcode. Стоит ли искать где-то еще?
1 ответ
Немного поздно, но кто-то может найти это полезным.
Это проблема совместного использования ресурсов (CORS), когда ionic serve
или же ionic run -l
,
Вы можете решить это, установив прокси в своем ionic.project
,
Проверьте эту статью для получения дополнительной информации: http://blog.ionic.io/handling-cors-issues-in-ionic/