Поле заголовка запроса Access-Control-Allow-Origin не разрешено Access-Control-Allow-Headers в предварительном ответе.в рамках CodeIgniter - PullRequest
0 голосов
/ 18 мая 2018

Я новичок в codeIgniter, я создал REST-веб-сервисы, использующие code-igniter.

Пользовательский интерфейс, использующий реагирующий JS.

В почтальоне веб-сервис работает нормально.Но когда я интегрируюсь в React JS, он выдает ошибку.

Не удалось загрузить http://123.0.0.5:81/codeigniter-rest-api/index.php/auth/login: Поле заголовка запроса Access-Control-Allow-Origin не разрешено Access-Control-AllowЗаголовки в предполетном ответе.EmployeeLogin.js: 2 Uncaught (в обещании) TypeError: Не удалось получить enter image description here

Мой веб-сервис: 123.0.0.5:81/codeigniter-rest-api/index.php/auth/login

Мой сервер React: localhost / 3000

Я нашел решение и попытался в своем контроллерено не работает.

class Auth extends CI_Controller {
    function __construct() {
        parent::__construct();
        header('Access-Control-Allow-Origin: *');
        header("Access-Control-Allow-Headers: X-API-KEY, Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Authorization");
        header("Access-Control-Allow-Methods: GET, POST, OPTIONS, PUT, DELETE");    
    }

Мой сценарий реакции на потребление:

(async () => {
          const rawResponse = await fetch('http://123.0.0.5:81/codeigniter-rest-api/index.php/auth/login', {
              method: 'POST',
              headers: {
                  'Accept': 'application/json',
                  'Content-Type': 'application/json'
              },
              body: JSON.stringify(datapost)
          });
          const content = await rawResponse.json();

          alert(content);
      })();
...