Не получаете данные от моего API, хотя статус 200?

У меня проблема с моим API. вот ситуация:

  • У меня есть API, созданный с помощью laravel
  • Я хочу получить данные из index.html с помощью jQuery.
  • API для сервера у меня размещен (laravel), на бесплатном хостинге infinityfree.
  • для index.html он все еще находится на моем локальном хосте. Потому что идея в том, что я использую Cordova Apache для просмотра и позже конвертирую в apk.
  • когда я нахожусь на локальном хосте и запускаю сервер laravel (с помощью PHP artisan), он работает отлично, но когда я его разместил, я не могу получить данные
  • самое странное то, что мой статус запроса 200, но я получил ошибку. Но когда я нажимаю конечную точку с помощью инструмента разработчика -> браузер, данные показывают

Я не знаю, в чем причина проблемы, так как на моем локальном хосте все в порядке. Может кто-нибудь мне помочь?

Обновлено:

  • вот ответ, когда я пытаюсь использовать почтальона
  • опять же, на локальном хосте отображаются данные, а не это

РЕДАКТИРОВАТЬ :

  • все мои запросы на возврат выглядят так:
return response()->json([
     'status' => true
], 200);
  • и jQuery ajax следующим образом:
$.ajax({
    type: "get",
    url: GLOBAL_URL + "endpointapi",
    dataType: "json",
    xhrFields: {
        withCredentials: true
    },
success : function(){},
etc...

мм....кто-нибудь?

Обновлено:
Имеет ли значение поставщик услуг хостинга? Я имею в виду, что, поскольку я использую бесплатный хостинг, боюсь, он ограничен и не может использоваться для целей API. Если да, то кто-нибудь знает бесплатный хостинг и может использовать его для API?

Отвечает ли это на ваш вопрос? Как обойти net::ERR_FAILED 200

TUPKAP 18.02.2024 05:05

нет, я настраиваю шнур из .htaccess и public/index.php, но проблема с cors все еще сохраняется

Fajar Alam 18.02.2024 05:33

Скриншот, который вы показываете в качестве ответа в Postman, выглядит как исходный HTML-код страницы. Итак, ваше приложение Laravel возвращает HTML, а не отображаемую страницу. Обычно это означает, что PHP не установлен и не настроен на вашем сервере. Если вы посетите сайт Laravel в своем браузере, что вы увидите?

Don't Panic 18.02.2024 09:44

Я вижу обычную страницу приветствия с установленным PHP 8.2, и если я перейду к API конечной точки из поиска в браузере, API вернет правильные данные. Я просто не могу получить данные с помощью почтальона или ajax. это действительно странно

Fajar Alam 18.02.2024 09:49
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
4
264
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Мне кажется, что вы столкнулись с проблемой COR, когда вы пытаетесь получить данные из API, размещенного на InfinityFree, с вашего локального хоста.

CORS означает совместное использование ресурсов между источниками, и по большей части laravel оснащен всем необходимым, чтобы правильно с этим справиться. Возможно, вам просто нужно настроить ключ путей config/cors.php.

Документация Laravel по CORS

да, я столкнулся с ошибкой Cors, но я читал статьи здесь и там. Я настроил cors в /public.index.php безуспешно, настроил в /public_html/.htaccess безуспешно. это все еще корс блок

Fajar Alam 18.02.2024 05:18

но на локальном хосте я столкнулся с корсом, но данные успешно вернулись. поэтому я подумал, может быть, ошибка исходит не от Cors

Fajar Alam 18.02.2024 05:19

Я предполагаю, что на локальном хосте запрос поступает из того же источника, где находится ресурс, если только у вас нет красивых URL-адресов и ресурса в location.test и вы не делаете запрос из anotherlocation.test

ezw 18.02.2024 22:23
Ответ принят как подходящий

Ладно, думаю, у меня есть ответ. просто... Это потому, что бесплатный хостинг Infinity нельзя использовать для целей API (для бесплатной версии, IDK для платной версии). Вы можете найти причину, по которой он не может поддерживать API.

Я меняю хостинг на платный (конечно, не в приложении infinityfree), и тогда все работает нормально.

Другие вопросы по теме

Обертывание изображений с помощью элементов div в CSS Tailwind меняет внешний вид — как сохранить исходный макет?
Блог Tumblr: Как исправить проблему с количеством столбцов в полях «Отправить страницу» и «Страница вопросов»?
Как центрировать элементы диаграммы по горизонтали и вертикали в сетке
Проблема с гамбургер-меню - навигационное меню не исчезает
Пытаюсь изменить цвет квадрата в сетке на html-холсте, но не работает, и понятия не имею, почему, на этом этапе дважды проверено сто раз
Лучшая практика HTML/CSS для многократно используемых изображений (150+ на страницу)
Функция срабатывает до полной загрузки сайта
Добавьте первый параметр по умолчанию в качестве элемента выбора при заполнении параметров выбора из поля перечисления в ASP.NET Core
В сетке CSS, как я могу сделать каждый столбец равным 1/3 (мин) и 1/2 (макс) в зависимости от количества столбцов?
Как оставить раскрывающийся список открытым после наведения (только с помощью CSS)