Youtube видео не работает на тестовом сервере
В среде Enfinity я хочу определить, работает ли мой веб-сайт по HTTP или HTTPS. Мой метод заключается в том, чтобы получить URL с помощью request.getRequestURL().toString();
затем проверьте, есть ли строка https://
или нет. URL в адресной строке выглядит так:
https://test.example.com/is-bin/INTERSHOP.enfinity/WFS/Example-ExampleSite/en_US/-/USD/Pipeline-Start
Но результат кода выглядит так:
http://test.example.com/servlet/Beehive/WFS/Example-ExampleSite/en_US/-/USD/Pipeline-Start
Меня не волнует разница в URL, но сейчас меня интересует переход с https на http. Тот же результат случился, даже если я получил и распечатал URL с ApplicationFrame
, Кто-нибудь может помочь объяснить, почему он так изменился, и может предоставить обходной путь для получения исходного URL-адреса в Enfinity (или, по крайней мере, определить, находится ли URL-адрес в http или https)? Этот сайт использует переписывание URL, но я думаю, что в обоих URL-адресах нет записи URL. Благодарю.
1 ответ
Если вам нужна только часть http или https, я бы рекомендовал не получить полный URL, а только схему.
Схема запроса определяет, где протокол URL - http или https. в коде вы можете получить схему с помощью request.getScheme()
Кроме того, вы можете получить имя сервера по (домен вашего URL с помощью request.getServerName()
и вы можете получить порт с помощью здесь введите код request.getServerPort()