В phonegap у меня есть проблема при вызове PHP-файла с помощью jQuery AJAX. Ошибка при вызове файла:
В запрошенном ресурсе нет заголовка «Access-Control-Allow-Origin»
Google сказал поставить этот header('Access-Control-Allow-Origin: *');
кода header('Access-Control-Allow-Origin: *');
в текущем заголовке файла PHP. Я помещаю код в заголовок, но все равно никаких изменений. Я подключил к нему jsfidde .
Файл connectionsqlphp.php
code здесь
<?php header('Access-Control-Allow-Origin: *'); header('Content-Type: application/json'); echo "hi"; ?>
Не должно быть проблем с перекрестным происхождением в phonegap / cordova, если вы правильно настроите источник доступа в config.xml.
Это нормально, что у вас есть это сообщение при тестировании в браузере, если вы пропустите некоторые заголовки CORS. Попробуйте добавить:
header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Methods: GET, POST');
Но вам снова не нужны эти заголовки для приложения для телефонных разговоров.
Когда вы делаете echo "hi";
, ваш не отправляет json, а отправляет текст «привет». (просто запись json в заголовке не форматирует то, что вы эхо).
Я думаю, вы должны либо использовать $.get
в javascript и удалить header('Content-Type: application/json');
от php, чтобы приложение ожидало простой текст или изменило ваш php, чтобы действительно отправить JSON.
например:
echo "{message:\"hi\"}";