Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.net检查页面是http还是https_Asp.net_Https - Fatal编程技术网

ASP.net检查页面是http还是https

ASP.net检查页面是http还是https,asp.net,https,Asp.net,Https,我有一个web应用程序托管在多个服务器上,其中一些服务器是https。如何从代码隐藏中检查页面当前是否使用http或https?您可以参考HttpRequest类上的请求.IsSecureConnection属性。对于页面、用户控件或类似控件之外的完整引用,请使用HttpContext.Current.Request.issecurenconnection或者使用HttpContext.Current.Request.issecurenconnection: Request.ServerVari

我有一个web应用程序托管在多个服务器上,其中一些服务器是https。如何从代码隐藏中检查页面当前是否使用http或https?

您可以参考
HttpRequest
类上的
请求.IsSecureConnection
属性。对于页面、用户控件或类似控件之外的完整引用,请使用
HttpContext.Current.Request.issecurenconnection
或者使用
HttpContext.Current.Request.issecurenconnection

Request.ServerVariables["SERVER_PROTOCOL"];
试试这个

aCookie.Secure = HttpContext.Current.Request.IsSecureConnection
同样有效。它返回
http
https


Ref:

Aspnet Core 2.0的更新,现在,您应该在控制器内部使用
Request.IsHttps

在.net Core中,我使用:

Context.Request.Scheme == Uri.UriSchemeHttps

当心-ISSECURE重新连接可能会给出错误的否定。答案有点老了,所以现在,对我来说,这是一个有点改变奥文。我通过“System.Web.HttpContext.Current.GetOwinContext().Request.IsSecure”获得了该值。也许这对以后的人来说很方便。:)这会在HTTP和https上为我返回
HTTP/1.1
,而
Request.IsSecureConnection
会按预期返回。从NET Core 2.2开始,您可以使用
Request.Scheme
返回
https
HTTP
。尽管在Ubuntu
IsHttps
Request.Scheme
上,但在Windows服务器上都可以正常工作。Scheme都说请求对我来说不安全,所以不确定这是错误还是配置错误。
Context.Request.Scheme == Uri.UriSchemeHttps