У меня есть Android-проект DroidIn, который использует HttpClient 4 (встроенный в Android) для аутентификации на основе форм. Я начал замечать, что люди, использующие Wi-Fi, сообщают о проблемах с подключением. Это также не помогает тому, что сайт, к которому я обращаюсь, имеет самоназначенный сертификат. Что ж, вопрос в том (я довольно расплывчато отношусь к деталям WiFi), если WiFi в точке доступа не поддерживает HTTPS, будет ли это достаточной причиной для сбоя подключения, и есть ли что-нибудь, что я могу сделать, кроме проксирования на другой сервер приложений, используя HTTP, который затем будет вызывать HTTPS-сайт?
Аутентификация HTTPS через WiFi с использованием HttpClient 4
Ответы (3)
Wi-Fi - это просто протокол низкого уровня, вы имеете дело с HTTP и TCP/IP, которые не знают о Wi-Fi. Таким образом, вы можете игнорировать тот факт, что вы используете Wi-Fi, просто попробуйте проверить, доступен ли сервер со стороны клиента. (попробуйте телнет на порту https, который по умолчанию 443)
У меня такая же проблема в приложении Air. Оно называется Postal, приложение для отслеживания почты для бразильского сервиса. (Буду признателен, если вы попробуете это через Wi-Fi и вернете мне ответ). Он всегда работает на 2G/3G, но редко работает при подключении к wi-fi. Все остальное работает, кроме AIR APPS! Иногда это работает, иногда нет в том же телефоне и/или точке доступа. А когда оно не работает, любое другое приложение AIR тоже не работает.
Даже тестовое приложение Tour de Flex Mobile AMF Remoting перестает работать.
Ни HTTPRequests, ни AMF Remoting не работают. Просто выдает ошибку 404 - Страница не найдена.
Дело не в роутере, потому что иногда он работает. Я считаю, что это проблема в AIR, когда активный сетевой адаптер меняется, он продолжает пытаться пройти через 2G/3G. Это то, на что Adobe следует обратить внимание.
Wi-Fi может блокировать порт 443, но я был бы удивлен, поскольку протокол https довольно часто используется обычными пользователями. Это если были заблокированы то это может быть ваша проблема. Ответ slmix обнаружит этот случай, но, поскольку вы не работаете с клиентом, вероятно, нецелесообразно запускать этот telnet (даже если Android его поддерживает).