Squeak.ru - шаблоны программирования

Codeigniter: AJAX не может получить доступ к контроллеру: Access-Control-Allow-Origin

Итак, я впервые попробовал свои силы на Codeigniter. Я попытался создать систему входа в систему. Посмотрите здесь: http://www.henryspike.tk/udemy/

Когда вы пытаетесь войти в систему, предполагается использовать AJAX для отправки данных на контроллер, но хром отображает ошибку:

XMLHttpRequest не может загрузить http://www.henryspike.tk/udemy/index.php/main/login. В запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin». Таким образом, доступ к происхождению 'http://henryspike.tk' запрещен. В ответе был код состояния HTTP 500.

Я искал проблему и обнаружил, что она как-то связана с междоменными вещами. Я не пробовал средства защиты, так как думаю, что не использую AJAX из другого домена. Контроллер и представление/jQuery находятся в одном домене.

Это что-то, потому что я установил Codeigniter в подпапку на моем домене, то есть Udemy! Я хотел бы заявить, что я правильно отредактировал базовый URL-адрес на http://www.henryspike.tk/udemy в моем config.php


  • подскажите куда добавить шапку? в каком файле? 30.01.2017
  • Пожалуйста, включите минимальный, полный и проверяемый пример проблемы, чтобы мы могли видеть, а не гадать. 30.01.2017
  • Что ж, посетите henryspike.tk/udemy и попробуйте войти с любым адресом электронной почты/паролем. Убедитесь, что у вас открыта консоль. Затем, как только вы нажмете «Войти», AJAX должен передать данные контроллеру. но это не так и возвращает ошибку CORS 30.01.2017
  • можете показать мне .htaccess в корневой папке? 30.01.2017
  • У меня нет файла .htaccess. Следует отметить одну важную вещь: когда я добавляю заголовок в свой контроллер, все работает нормально... Но я хочу знать причину такого поведения... поскольку я нахожусь в том же домене, почему для этого требуется заголовок перед контроллером? 30.01.2017
  • Это работает, но суть здесь в том, чтобы спросить... Почему это работает именно так? Я имею в виду, что я нахожусь в том же домене, тогда почему он отображает ошибку Origin? Это потому, что я установил Codeigniter в подкаталог? 30.01.2017
  • Хорошо. Пожалуйста, напишите как ответ, чтобы я мог выбрать ваш. Спасибо за помощь! 30.01.2017

Ответы:


1

Установить заголовок

Возможно есть проблемы с разными портами. Неважно, что они находятся на одном компьютере/имя хоста.

30.01.2017

2

www вместо www считается другим субдоменом и, следовательно, другим источником.

Использовать относительный URL

30.01.2017
  • Я добавил «www» в каждый URL-адрес... каждый мой URL-адрес является абсолютным, поэтому это не должно быть проблемой. 30.01.2017
  • Но показанная ошибка указывает на то, что вы открываете страницу в домене, отличном от www. Покажи свой ajax-код 30.01.2017
  • взгляните $(.logButton).click(function () { $.ajax({метод: POST, url: henryspike.tk/udemy/index.php/main/login, данные: {email: $(#email).val(), пароль: $(#password).val ()}, успех: функция (данные) { предупреждение (данные); } }); вернуть ложь; }); 30.01.2017
  • хорошо... и в нем есть www, но когда вы открываете страницу, вы не используете www 30.01.2017
  • Я не могу понять... Пожалуйста, уточните немного? 30.01.2017
  • Страница, с которой вы делаете запрос, не имеет www в адресной строке. 30.01.2017
  • Новые материалы

    Угловая структура архитектуры
    Обратите внимание, что эта статья устарела, я решил создать новую с лучшей структурой и с учетом автономных компонентов: https://medium.com/@marekpanti/angular-standalone-architecture-b645edd0d54a..

    «Данные, которые большинство людей используют для обучения своих моделей искусственного интеллекта, поставляются со встроенным…
    Первоначально опубликовано HalkTalks: https://hacktown.com.br/blog/blog/os-dados-que-a-maioria-das-pessoas-usa-para-treinar-seus-modelos-de-inteligencia-artificial- ja-vem-com-um-vies-embutido/..

    Сильный ИИ против слабого ИИ: различия парадигм искусственного интеллекта
    В последние годы изучению и развитию искусственного интеллекта (ИИ) уделяется большое внимание и прогресс. Сильный ИИ и Слабый ИИ — две основные парадигмы в области искусственного интеллекта...

    Правильный способ добавить Firebase в ваш проект React с помощью React Hooks
    React + Firebase - это мощная комбинация для быстрого и безопасного создания приложений, от проверки концепции до массового производства. Раньше (знаете, несколько месяцев назад) добавление..

    Создайте API с помощью Python FastAPI
    Создание API с помощью Python становится очень простым при использовании пакета FastAPI. После установки и импорта вы можете создать приложение FastAPI и указать несколько конечных точек. Каждой..

    Веселье с прокси-сервером JavaScript
    Прокси-серверы JavaScript — это чистый сахар, если вы хотите создать некоторую общую логику в своих приложениях, чтобы облегчить себе жизнь. Вот один пример: Связь клиент-сервер Мы..

    Получить бесплатный хостинг для разработчиков | Разместите свой сайт за несколько шагов 🔥
    Статические веб-сайты — это веб-страницы с фиксированным содержанием и его постоянным содержанием. Но теперь статические сайты также обрабатывают динамические данные с помощью API и запросов...