Я пытаюсь вызвать PHP script
на моем локальном сервере с jQuery
внутри функции CasperJS
, но почему-то я не получаю результат. Вот мой код:Не удается получить результат из скрипта PHP с помощью jQuery
casper.then(function() {
var result = casper.evaluate(function() {
var result = $.get('http://localhost/test.php', function() {});
return result;
});
result = JSON.stringify(result);
this.echo(result);
this.exit();
});
Это не имеет значения, какой URL называется, она всегда обеспечивает такой же результат:
{"abort":{},"always":{},"complete":{},"done":{},"error":null,"fail":{},"getAllRe
sponseHeaders":{},"getResponseHeader":{},"overrideMimeType":{},"pipe":null,"prog
ress":{},"promise":{},"readyState":1,"setRequestHeader":{},"state":{},"statusCod
e":{},"success":null,"then":{}}
Вещи, которые я проверил:
- XAMP сервер работает и работа
- Файл PHP есть
- Любой другой URL-адрес также не работает, и del Ivers результат (смотрите выше)
- Кроме того, функция JQuery
$.load()
не работает (то результат является «нулевым») - JQuery загружен правильно (в противном случае CasperJS выдает ошибку)
- Если я просто вернуть это работает (например,
return "test";
)
Не знаю, что делать. Спасибо за любые предложения!
Удивительный, он работает, спасибо! После вашего решения мне пришлось добавить «webSecurityEnabled: false», но это уже другая история. – Crayl
Вы не упомянули об этом, так как для пользователя страница будет разбита во время ожидания запроса. Вы не можете заметить это в разработке, потому что ответы все равно мгновенно. – Esailija
@Esailija Да, страница будет вибрировать ** ЕСЛИ ** вы запускаете этот скрипт перед загрузкой DOM. Если вы выполняете это после, в ответ будет просто задержка. –