IONIC 3 CORS Проблема при открытии в устройстве и использовании API - PullRequest
0 голосов
/ 14 декабря 2018

Я новичок в IONIC, я использую api slim rest с ionic 3. Я получаю эту ошибку:

"Не удалось загрузить http://sargam.digifrizz.com/api/v1/empLogin: Ответ на предпечатный запрос не 't пройти проверку контроля доступа: в запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin». Следовательно, Origin 'http://localhost:8100' не разрешен доступ ".

Я также использую URL прокси.

 {
      "name": "sargam",
      "integrations": {
        "cordova": {}
      },
      "type": "ionic-angular",
       "proxies": [
        {
          "path": "/v1/empLogin",
          "proxyUrl": "http://sargam.digifrizz.com/api/v1/empLogin"
        }
      ]
    }

Я использую этот код:

  return new Promise((resolve, reject) => {
                let headers = new Headers();

                headers.append('Access-Control-Allow-Origin' , '*');
                        headers.append('Access-Control-Allow-Headers','Origin, Content-Type, X-Auth-Token, authorization, X-Requested-With');           
                headers.append('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT');
                headers.append('Access-Control-Allow-Credentials', 'true');
                headers.append('Accept','application/json');
                        headers.append('Content-Type', 'application/json');


            this.http.post(apiUrl+'empLogin', JSON.stringify(credentials), {headers: headers})
              .subscribe(res => {
                resolve(res.json());

              }, (err) => {
                reject(err);
              });
            });

Пожалуйста, помогите мне в решении этой проблемы

Спасибо, Снигдха

Ответы [ 3 ]

0 голосов
/ 17 декабря 2018

Добавьте плагин cors в ваш браузер Chrome, пока он будет работать.Но у вас есть дескрипторы на стороне сервера.

0 голосов
/ 21 декабря 2018

Я использую бэкэнд "Access-Control-Allow-Origin, Access-Control-Allow-Headers и Access-Control-Allow-Methods", но получаю ту же ошибку

Ответ бэкэнда равен

access-control-allow-headers → X-Requested-With, Content-Type, Accept, Origin, Authorization access-control-allow-method → ​​GET, PUT, POST, DELETE, OPTIONS контроля доступа-разрешения-источника → *контроль кеша → нет хранилища, нет кеша, необходимо повторно проверить соединение → закрыть длину контента → 412 тип контента → application / json; charset = utf-8 date → пт, 21 дек 2018 08:06:22 GMT истекает→ Четверг, 19 ноября 1981 г. 08:52:00 GMT прагма → сервер без кэширования → Apache / 2.2.15 x-powered-by → PHP / 7.0.27

0 голосов
/ 14 декабря 2018

Контроль доступа CORS должен быть реализован на стороне сервера.Вы должны ответить 200 OK на запрос OPTIONS и включить эти заголовки с правильной конфигурацией: Access-Control-Allow-Origin, Access-Control-Allow-Headers и Access-Control-Allow-Methods.Вы должны прочитать документацию CORS о том, как реализовать это в бэкэнде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...