Просмотр полной версии : AMFPHP и headers
sergeik81
23.02.2010, 17:51
Возник вопрос скорее не практического, а теоретического свойства.
Пытаюсь разобраться с AMFPHP и вижу там, что используются различные хедеры, которые берутся при десериализации. В частности вот такие - DescribeService, Credentials, amf_server_debug и так далее. Но никак не могу понять, кто посылает именно такие хедеры? Как понимаю, то при работе с RemoteObject все в итоге сводится к NetConnection и его методу call. У него так же есть метод addHeader который и вставляет подобные хелеры, скорее всего(ну это я так думаю). Но нигде не могу найти, где прописываются именно такие хедеры. Может кто знает?
Я думаю, что это должно быть описано в AMF спецификации:
http://opensource.adobe.com/wiki/download/attachments/1114283/amf3_spec_05_05_08.pdf
Посмотрите четвертый пункт.
sergeik81
23.02.2010, 20:36
Увы, но там ничего нету об этом. Возможно, что эти заголовки можно отсылать только используя NetConnection напрямую, тогда непонятно, зачем использовать RemoteObject? Более того, в сорсах совсем не нашел, где используются хедеры, которые прописываются во флексе самом в классе AbstractMessage. Хотя тут возможно, что дело в том, что amfphp давно заброшен. Попробую посмотреть другие реализации - на том же java
Возможно, что эти заголовки можно отсылать только используя NetConnection напрямую
Боюсь, что NetConnection сам их и отсылает, вас об этом не спрашивая.
тогда непонятно, зачем использовать RemoteObject
Мне это тоже никогда не было понятно, на мой неопытный взгляд, это просто архитектурное излишество.
Более того, в сорсах совсем не нашел, где используются хедеры, которые прописываются во флексе самом в классе AbstractMessage
Боюсь, что нигде не используются т.как см. пункт первый. Кстати, просмотрел этот класс на наличие каких-то хидеров - ничего там не нашел... об чем речь? :)
amfphp давно заброшен
AMFPHP живет и здравствует, готовится к выходу верия 2.0, нашлись люди, которым оказалось не по душе, чего Arnold Wade (не путать с Vader!) с ним учудил. В SVN лежит пропатченая версия совмесимая с PHP 5. И по-тихоньку продолжается разработка.
sergeik81
24.02.2010, 13:07
Боюсь, что NetConnection сам их и отсылает, вас об этом не спрашивая.
Какие-то да, но такой как DescribeService уж слишком на кастомный походит или тот же amf_server_debug - согласитесь, что вряд ли адобовские разработчики позаботились о том, что такой хедер с таким названием будет отсылать сам NetConnection по умолчанию. Все бы ничего, но в AMFPHP они используются для отдельных нужд. Создается впечатление, что они берутся из воздуха, а когда что-то берется из воздуха, то где-то должен быть подвох-))
Кстати, просмотрел этот класс на наличие каких-то хидеров - ничего там не нашел... об чем речь? :)
Там в самом начале идет объявление статических констант типа этого REMOTE_CREDENTIALS_HEADER и когда формируется message, который отправляется NetConnection, то подобные вещи засовываются в массив message.headers, но вот в amfphp они нигде не вытаскиваются. Возможно, что это сделано только для BlazeDS или LiveCycle. Надо смотреть код того же BlazeDS, видимо
AMFPHP живет и здравствует, готовится к выходу верия 2.0, нашлись люди, которым оказалось не по душе, чего Arnold Wade (не путать с Vader!) с ним учудил. В SVN лежит пропатченая версия совмесимая с PHP 5. И по-тихоньку продолжается разработка.
Спасибо за наводку, буду посмотреть
REMOTE_CREDENTIALS_HEADER - это, на сколько я знаю, нужно для Zend_Auth, для AMF как такового оно не нужно. А по поводу остального - ну так воспользуйтесь Charles proxy и посмотрите, что NetConnection отсылает, я практически уверен, что заголовки нужные для AMF он сам и формирует.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.