2015-10-16 11 views
5

Sto utilizzando HybridAuth per consentire agli utenti di accedere al mio sito utilizzando i loro account Facebook. Durante il primo accesso, come al solito, Facebook chiede all'utente grandi autorizzazioni per la mia applicazione. Poiché desidero la soglia di accettazione più bassa possibile, non voglio chiedere agli utenti durante questo processo di accesso di concedere autorizzazioni, che sono necessarie per pubblicare sui loro muri. Ma mi piacerebbe fornire questo come una caratteristica in più.HybridAuth: come chiedere un'autorizzazione aggiuntiva per l'exisiting dell'utente?

Ad esempio, se un utente invia un determinato tipo di contenuto, vorrei chiedergli se desidera che questo contenuto venga pubblicato sul suo muro. Per rendere ciò possibile, devo chiedere il permesso di postare sulla bacheca di Facebook quando l'utente è già loggato.

E 'possibile con HybridAuth?

risposta

1

Possibile? Sì, HybridAuth supporta l'API Perm di FaceBook che ti permette di controllare quali permessi ci sono. Il modo per farlo è semplice. Nell'array "scope" inserisci i permessi che chiedi e di cui hai bisogno. Non c'è modo di far finta di usare solo pochi, ma in realtà li stai usando tutti. Vi darò dare alcuni esempi di codice (in PHP) come una vaga idea di quello che è:

<?php 
$config = array(
    "base_url" => "http://mywebsite.com/path/to/hybridauth/", 
    "providers" => array (
    "Facebook" => array (
     "enabled" => true, 
     "keys" => array ("id" => "PUT_YOURS_HERE", "secret" => "PUT_YOURS_HERE"), 
     "scope" => "email, user_about_me, user_birthday, user_hometown", // optional 
     "display" => "popup" // optional 
))); 

require_once("/path/to/hybridauth/Hybrid/Auth.php"); 

$hybridauth = new Hybrid_Auth($config); 

$adapter = $hybridauth->authenticate("Facebook"); 

$user_profile = $adapter->getUserProfile(); 

Come si può vedere, la matrice ambito contiene quali autorizzazioni intenzione di utilizzare nella propria applicazione. Per alcuni, tutto può succedere su Hybrid Auth. Ma allo stesso tempo dipende da cosa stai usando, potresti stare meglio usando l'API di Facebook e C +. Per maggiori dettagli si rimanda indietro a: http://hybridauth.sourceforge.net/userguide/IDProvider_info_Facebook.html E per l'API di Facebook: http://developers.facebook.com/docs/reference/dialogs#display

Se avete bisogno di ulteriore aiuto, si prega di commento qui sotto e se non sono stato chiaro abbastanza Mi dispiace per il disagio. Buona giornata!

Problemi correlati