Данные BlazeDS передаются через SSL

У меня есть приложение, которое использует технологию передачи данных blazeDS для отправки данных в событие Flex Client за 5 секунд. Приложение отлично работает, когда я запускаю его через HTTP с прокси или без него. Когда я запускаю его через https, отправка данных больше не работает. Я получаю следующую ошибку

rootCause [IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 
text="Error #2032: Stream Error. 
URL: https://localhost/admin/messagebroker/streamingamfsecure?command=open&version=1

Кто-нибудь успешно заставил потоковую передачу работать через SSL?

Спасибо, Пратима.


person user221833    schedule 01.12.2009    source источник


Ответы (2)


Вопросы, которые стоит задать себе (и разместить здесь)

  • Отображается ли запрос в ваших журналах доступа?
  • Поддерживает ли Tomcat/любой сервер обычные HTML-страницы через HTTPS?
  • Как выглядят заголовки ответов? Очистка кеша ничего не меняет?
  • Какой браузер вы используете?
  • Можете ли вы установить подробные заголовки кэширования?

Попробуйте один из них:

 Cache-Control: no-store
 Cache-Control: no-store, must-revalidate
 Cache-Control: no-store,max-age=0,must-revalidate
 Cache-Control: max-age=0,must-revalidate
 Cache-Control: must-revalidate
person Stu Thompson    schedule 02.12.2009

2032 — это немного расплывчатая ошибка фреймворка.

Тем не менее, что нужно проверить (помимо списка Стью)

Можно ли перейти на страницу https:// напрямую в браузере?

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

Если вы вставите URL-адрес в браузер, вы сможете нажать на него и получить пустой ответ. Что-нибудь еще, и у вас есть проблема (часто не относящаяся к BlazeDS).

Действителен ли ваш сертификат?

Если вы используете самоподписанный сертификат (как это часто бывает при разработке), определено ли в вашем браузере исключение безопасности? Различные браузеры по-разному блокируют попытки обращения к недействительным сертификатам, но ни один браузер с самовосприятием не пропустит этот вызов до тех пор, пока не будет настроено исключение.

Правильно ли определен ваш канал?

При переключении с http:// на https:// вам необходимо обновить класс Channel на гибком клиенте до SecureAMFChannel, а класс конечной точки в вашем services-config.xml на SecureAMFEndpoint.

Вообще говоря, https с BlazeDS (будь то push или RPC) работает просто отлично, если вы правильно его настроите.

person Marty Pitt    schedule 30.06.2011