1
我实际上不确定这是否可能在VB.NET中,但我试图扩展内置属性Request.IsSecureConnection
。Extend Request.IsSecureConnection属性
我在反向代理上使用SSL卸载,因此所有连接点击节点将总是返回假为Request.IsSecureConnection
。如果标题不存在,我自己的扩展将首先检查HTTP_X_FORWARDED_PROTO
,然后回退到标准方法。
这是我到目前为止,但是当我在这里设置一个断点时,这个块永远不会被击中。我肯定有一个很好的理由..只是不确定是什么原因?
Module Extensions
<Extension()>
Public Function IsSecureConnection(Request As HttpRequestBase) As Boolean
If HttpContext.Current.Request("HTTP_X_FORWARDED_PROTO") <> "" Then
Dim https As String = HttpContext.Current.Request("HTTP_X_FORWARDED_PROTO")
If https.ToLower = "on" Then
Return True
Else
Return False
End If
Else
Return Request.IsSecureConnection '<< Not sure here how I would reference the .net framework class without looping back into this function?
End If
End Function
End Module
编辑:
我想截获此属性,而不是写我自己的自定义方法,是因为我很依赖库是引用此属性,我不能覆盖这个原因。
是的,我也刚刚发现这个,谢谢。我想我需要使用另一个库。 – QFDev