簡體   English   中英

如何根據HybridAuth中的某些條件禁用FB登錄

[英]How to disable fb login based on some condition in hybridauth

我們如何根據某些條件禁用FB登錄。 例如,如果時間在凌晨2點到凌晨4點之間,則禁用facebook登錄(僅作為示例)。 我的問題不是條件的邏輯,我當然可以適用。 但是我的問題是一旦滿足條件,那么如何在hybridauth中以編程方式禁用fb登錄

先感謝您

附言 您可能想在這里查看代碼: https : //github.com/hybridauth/hybridauth

http://hybridauth.sourceforge.net/

在您的超級簡化示例中,您可以添加邏輯以根據需要即時構建配置數組,然后將其注入到hybridauth實例中。 這可以通過加載標准配置數組,然后根據您擁有的任何業務邏輯規則進行操作來實現。

您始終可以擴展Hybridauth,但是對於您提供的相對簡單的示例來說,這似乎有些過頭了。

文檔中,我們可以看到該條目。

enabled可以為truefalse 如果您不想使用特定的提供程序,則將其設置為false

如果打開hybridauth/config.php ,則會看到一個配置數組,其中包含用於不同身份驗證方法的配置。 最有趣的是,我們可以看到一個名為enabled的鍵,可以對其進行操作。

直接修改值。

我們可以使用三元運算符直接修改值。 例如;

...

"Facebook" => array ( 
                "enabled" => (condition ? true : false), //Ternary operator modifying `enabled` value.
                "keys"    => array ( "id" => "", "secret" => "" ),
                "trustForwarded" => false
            ),
....

但是,我們可以通過在加載配置后對其進行修改來做到這一點。

稍后修改值。

如果打開examples/social_hub/login.php ,您將看到我們加載了配置文件並使用了它。 在這里我們可以修改已enabled密鑰。

配置保存在變量$config

if( condition ) {
  $config['providers']['Facebook']['enabled'] = FALSE;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM