6

Ho cercato, leggere i documenti dello sviluppatore FB.Come accedere con Facebook utilizzando DotNetOpenAuth

MVC 4, ho incorporato OpenId.
Ora voglio includere anche l'accesso FB, proprio come StackOverflow e qualche altro sito l'hanno implementato.

Creo il mio file JS con codice di esempio dallo sviluppatore FB?
O
Utilizzare strumenti di terze parti, che non sono a conoscenza di cosa utilizzare. Ho visto OAuthClient (DotNetOpenAuth-4.0.0.11165), non è stato possibile eseguire, c'era un errore del server e non è stato possibile eseguire il debug in quanto mancava il file sorgente.

+0

Facendo clic su Sign in with FB produce: HTTP 400 - Bad Request – Picflight

+0

Il server remoto ha restituito un errore: (400) Bad Request. – Picflight

risposta

2

Facebook implementa una precedente specifica OAuth 2 rispetto all'ultima beta DotNetOpenAuth. Per interagire con Facebook, è necessario utilizzare the CTP of v3.5 di DotNetOpenAuth per evitare l'errore 400 Richiesta non valida.

+0

Ottengo anche questo utilizzando 3,5 ctp menzionato da Andrew nel progetto MVC utilizzando il progetto https://github.com/mhamrah/Html5OpenIdTemplate. – TimJohnson

+0

Davvero? Ho appena scaricato per testarlo e ha funzionato bene (il CTP - non ho provato il modello @gogoly di riferimento). –

+1

Sì, questi 400 errori di Bad Request hanno a che fare con me o con qualcuno che non entra correttamente nell'account di Facebook e imposta l'url sicuro. Tutti gli esempi utilizzano una porta specifica localhost: xxxxx. In fb, deve essere impostato in questo modo prima del test. Ci è voluto un po 'per capire. Grazie comunque. – TimJohnson

0

Nell'ultima versione di DotNetOpenAuth (4.0.0.12084), l'accesso con Facebook funziona correttamente.

Al fine di fare il campione soluzione di compilazione: installare Code Contracts: http://msdn.microsoft.com/en-us/devlabs/dd491992.aspx

E per rendere esempio Facebook login di lavoro è necessario

  1. Crea la tua app su Facebook
  2. Specificare voi URL del sito Web locale nelle impostazioni dell'app (nella sezione "Seleziona l'integrazione della tua app con Facebook")
  3. Aggiorna il file Web.config (progetto OAuthClient) con l'ID app e il Segreto applicazione .
  4. in DotNetOpenAuth.ApplicationBlock.Facebook.FacebookGraph tipo di modifica di proprietà Id da int-lungo
  5. progetto Run OAuthClient. Dovrebbe funzionare.

Maggiori dettagli qui: Facebook/ Twitter with dotnetopenauth?

di leggere anche le note stampa per quanto riguarda OAuth 2.0 (http://www.dotnetopenauth.net/oauth/dotnetopenauth-4-0-released/) Per quanto mi risulta non è ancora stabile, ma sto davanzale lo studio di questo. Finora funziona bene per me.