Как я могу использовать JavaScript на стороне клиента, чтобы определить, была ли страница зашифрована? - PullRequest
47 голосов
/ 12 ноября 2008

Можно ли на стороне клиента определить, использует ли пользователь зашифрованную страницу или нет?

Другими словами, я хочу знать, начинается ли URL-адрес текущей страницы с http или https.

Ответы [ 3 ]

74 голосов
/ 12 ноября 2008

Используйте window.location.protocol, чтобы проверить, является ли оно https:

function isSecure()
{
   return window.location.protocol == 'https:';
}

В качестве альтернативы вы можете не указывать "окно", если у вас нет локального местоположения.

function isSecure()
{
   return location.protocol == 'https:';
}
12 голосов
/ 18 марта 2010

Как научила меня аналитика Google:

if ("https:" == document.location.protocol) {
    /* secure */
} else {
    /* unsecure */
}
1 голос
/ 24 августа 2018

Второй метод для новейших браузеров:

var secure = window.isSecureContext;

или просто получите isSecureContext:

if (isSecureContext) {
   ...
}

Подробнее здесь: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts#Feature_detection#Feature_detection

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