JQuery AJAX простой PHP Пост не работает

У меня есть очень простой сегодня! Я пытаюсь опубликовать из jQuery в файл PHP, размещенный на localhost.

Мой JS:

$("#searchNameButton").click(function() {
var name = $("#searchNameText").val();
$.ajax({
type: 'POST',
url: 'localhost:8080/getNameInfo.php', // -> this works fine from the browser
// data: { name: name }, -> commented out
success: function(){
alert('request successful');
},
error: function(xhr, textStatus, errorThrown){
alert('request failed');
}
})
});

Мой PHP-файл (getNameInfo.php), очень простой для тестирования:

<?php
echo 'TEST';
?>

В jQuery это всегда приводит меня к ошибке, говоря «Внутренняя ошибка сервера».
Я использую Ripple Emulator, и это то, что появляется в консоли:

СООБЩЕНИЕ https://rippleapi.herokuapp.com/xhr_proxy?tinyhippos_apikey=ABC&tinyhippos_rurl = локальный% 3A8080 / getNameInfo.php
500 — внутренняя ошибка сервера)

Я предполагаю, что это связано больше с тем, что написано в файлах. Любой совет? Спасибо!

РЕДАКТИРОВАТЬ: Нашел это: ССЫЛКА НА САЙТ но это не решит мою проблему. Если я сделаю то, что здесь написано, я не получу никакой ошибки (вместо этого), но все равно потерплю неудачу.

РЕДАКТИРОВАТЬ 2: Если я установлю для междоменного прокси значение Local в Ripple (это предлагается по ссылке выше), я получу

ОПЦИИ HTTP: // локальный: 4400 / пульсация / xhr_proxy tinyhippos_apikey = ABC&tinyhippos_rurl = HTTP% 3A // локальный% 3A8080 / getNameInfo.php нетто :: ERR_CONNECTION_REFUSED

РЕДАКТИРОВАТЬ 3: Изменил мой URL на локальный

C: //Mobile//Cross-Platform//TestApp//www//php//getNameInfo.php

и сейчас работает. Понятия не имею, как заставить это работать на localhost. BUT пойдет с этим сейчас, так как это только учебное приложение.

3

Решение

Добавьте контроль доступа заголовка вверху getNameInfo.php файл :

header('Access-Control-Allow-Origin: *');
2

Другие решения

Итак, наконец-то я нашел решение.
Несмотря на то, что это не рекомендуется, запуск Chrome с

—отключение-веб-безопасность

позволит мне вызвать скрипт PHP, размещенный на локальный: 8080 от локальный: 3000 где находится PhoneGap / Ripple Emulator.

0

По вопросам рекламы [email protected]