Канал отключен до получения подтверждения - PullRequest
0 голосов
/ 02 декабря 2011

Я работаю с Adobe Air и PHP с Zend Framework для удаленного взаимодействия.

В настоящее время на одной конкретной машине я получаю сообщение об ошибке «Канал отключен до получения подтверждения» при первом вызове приложения Air для функции php.

Я попытался запустить файлы php с некоторыми инструкциями отладки, и они работают нормально, так что это не проблема подключения php к базе данных.Кроме того, функции, которые вызываются из flex, вызываются (это записывается прямо до последнего оператора возврата), но элемент управления никогда не возвращается обратно во flex.Я также подтвердил, вызывая те же функции напрямую через php-файл с теми же значениями параметров, и он правильно возвращает ожидаемые значения.Так что я уверен, что это не исключение из-за некоторого кода ошибки php.

Вся настройка отлично работает на других машинах.Я не хочу просто переустанавливать все вслепую, так как хочу знать, какие настройки могут быть причиной этого.

Есть идеи, чего мне не хватает?

1 Ответ

0 голосов
/ 19 октября 2013

столкнулся с той же ошибкой при использовании zend_amf с flex. Я следую учебному пособию Ричарда Бейтса по VTC Adobe Air и разработке PHP

Самая полезная подсказка была в журналах Apache (вы можете увидеть, как только щелкните правой кнопкой мыши на wamp-> Apache-> Apache logs).

последние журналы по умолчанию идут вниз.

Не удалось найти пути включения, что привело к фатальным ошибкам при обращении к файлу flex .swf.

При доступе из wamp файлы php (сервисные и поддерживающие файлы php) просто работали нормально.

Пример журнала ошибок Apache:

Неустранимая ошибка: require () [function.require]: сбой открытия обязателен '../DBConnection.php' (include_path = '.; c: \ php \ includes; d: \ wamp \ library; D: \ wamp \ www \ EmployeeDirectory \ include \ services ') в D: \ wamp \ www \ EmployeeDirectory \ include \ services \ EmployeeService.php в строке 3, реферер: app: /EmployeeDirectory.swf

поэтому либо добавьте путь к соответствующим файлам в php.ini include_path, либо используйте константу для путей к файлам.

спасибо Richards any Ways за такой замечательный урок :)

С другой стороны:

Чек

класс шлюза, если вы

установили класс Serive для Zend

включить в первую строку в gateway.php

$ basedir = $ _SERVER ['DOCUMENT_ROOT']. 'YourProjectFolderInWamp /'; требуют ($ BASEDIR "включают / услуги / YourService.php".);

не забудьте где-нибудь использовать метод set класса zend amf ..

$ server-> setClass (new YourService ());

...