Неопределенная ошибка сеанса ColdFusion во Flash - PullRequest
3 голосов
/ 19 февраля 2011

У меня есть область членов, которая при входе в систему создает переменную сеанса с именем «userid». Он работает на всех страницах правильно. У меня есть файл application.cfm с включенным управлением сеансами.

Проблема в том, что у меня есть флэш-видеомагнитофон, который появляется в новом окне, которое отправляет файл с именем save.cfm. Как только я нажимаю «Сохранить» на флэш-рекордере, он отправляет сообщение в save.cfm, и я получаю сообщение об ошибке. Все они находятся в одном домене, поэтому я не понимаю, почему я получаю ошибку 500 Element USERID is undefined in SESSION. Форма не имеет ничего общего с этим значением, значение выбирается сессией.

1 Ответ

6 голосов
/ 19 февраля 2011

Я подозреваю, что флэш-плеер не отправляет куки cfid / cftoken, и поэтому сервер приложений CF не может определить, к какому сеансу относится этот трафик, и поэтому не может загрузить переменную сеанса.

Чтобы подтвердить это, зарегистрируйте содержимое структуры cookie на странице save.cfm, когда вы публикуете ее. Или, что еще лучше, используйте анализатор пакетов / прокси для отслеживания трафика.

Возможно, вам придется явно включить токены сеанса в URL-адрес, на который вы отправляете сообщение, добавив session.urltoken к URL-адресу.

Итак, когда вы настраиваете пункт назначения для записи видеорегистратора (предполагая, что он сгенерирован CF), вместо использования

save.cfm

использование

save.cfm?#urlEncodedFormat(session.urltoken)#

Больше информации от Рэя Кэмдена о схожей проблеме с флеш-публикацией

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...