Подтвердить что ты не робот

Обнаружение https из HttpContext в .net?

Я унаследовал кучу кода для веб-приложения, которое содержит кучи жестко закодированных путей. Мне было поручено запустить его с помощью https://.

Помимо обнаружения "https://" в URL-адресе есть более внутриполосный способ обнаружить, что текущий контекст - https?

Ищете что-то вроде:

System.Web.HttpContext.Current.Request.Url. Protocol.ToString()

4b9b3361

Ответ 1

Вы можете использовать HttpContext.Current.Request.IsSecureConnection

Ответ 2

Прямым ответом на ваш запрос на что-то вроде System.Web.HttpContext.Current.Request.Url.Protocol.ToString() является System.Web.HttpContext.Current.Request.Url.Scheme, хотя, как говорит Брэндон, в его ответ HttpContext.Current.Request.IsSecureConnection - это способ обнаружения использование https как логическое и, вероятно, более подходящее для проблемы, которую вы задаете в своем вопросе.

Ответ 3

Я использую этот код для автоматического перенаправления на https

If HttpContext.Current.Request.IsSecureConnection.Equals(False) Then
    Response.Redirect("https://" + Request.ServerVariables("HTTP_HOST") & HttpContext.Current.Request.RawUrl)
End If