2011-09-24 13 views
5

Sto testando la capacità di Heroku di scrivere un'app di Facebook con Python. Sto riscontrando un problema nell'esecuzione del tutorial di base. Sembrava che questa domanda valesse la pena di essere posta su StackOverflow nel caso in cui ci fosse una risposta che aiuti le altre persone a incontrare lo stesso identico problema.Problema durante l'esecuzione dell'esercitazione su Facebook di Heroku con Python

Ho seguito le istruzioni sulla pagina di sviluppo di Facebook di heroku (http://devcenter.heroku.com/articles/facebook). Il dispiegamento su Heroku ha funzionato bene.

Tuttavia, l'esecuzione locale dell'app non lo fa. Quando seguo le istruzioni e richiamare

http://localhost:5000 

Accedo alla schermata di accesso di Facebook. Ma quando faccio clic su Accedi in tale schermata, ottengo:

Errore di connessione SSL Impossibile connettersi al server . Questo potrebbe essere un problema con il server, oppure potrebbe richiedere un certificato di autenticazione client che non hai. Errore 107 (net :: ERR_SSL_PROTOCOL_ERROR): errore del protocollo SSL.

e l'uscita della console è

09:55:07 web.1 | https://localhost:5000/ 09:55:07 web.1 | 
https://www.facebook.com/dialog/oauth?client_id=179852202088814&redirect_uri=https://localhost:5000/&scope=user_likes,user_photos,user_photo_video_tags 
09:55:07 web.1 | 127.0.0.1 - - [24/Sep/2011 09:55:07] "GET/HTTP/1.1" 
302 - 09:59:02 web.1 | 127.0.0.1 - - [24/Sep/2011 09:59:02] code 400, 
message Bad request syntax 
('\x16\x03\x00\x00U\x01\x00\x00Q\x03\x00N}\xe2&\xf9\xf7"\x15\xd5\xb6\xf6\xa6\x0f\xb01\x97N\xcc\xb3l\xed\x97\xd1!-\x91c?\x1f\xac\xa2h\x00\x00*\x00\xff\x00\x88\x00\x87\x009\x008\x00\x84\x005\x00E\x00D\x00f\x003\x002\x00\x96\x00A\x00\x04\x00\x05\x00/\x00\x16\x00\x13\xfe\xff\x00') 
09:59:02 web.1 | 127.0.0.1 - - [24/Sep/2011 09:59:02] 
"UQN}?&??"ն??1?N̳l??!-?c???h*???98?5EDf32?A/??" 400 - 

Quando provo in Safari, la barra degli indirizzi mostra il seguente URL molto lungo:

https://localhost:5000/?code=AQBPWpkbRdL2bt7KER0fcUS9ZnheXiGApkaF5MXbNgyIJqzw46SGve1iVyLIx1sDltNh0PkXPDdxhjAxoa1YED1cpcaflCXCkqzO27A-rhgjBpXwWUClpGRpRmDD2eIXcOyIczo_qGf45tbpvDZO5hFa0gmUeSHri4vY3bqw-5jBjZRoZfEB7pI8cLPOIsnNICI#_=_ 

Safari Compains che non si può stabilire una connessione sicura.

Questo è in esecuzione su OS X 10.6.8.

+0

Hai impostato il dominio dell'app su localhost invece dell'URL heroku da qualche parte? – Igy

+0

È possibile eseguire senza HTTPS per lo sviluppo. Avere la modalità sandbox abilitata (tramite Facebook) ed eseguire la tua app da localhost. – mscccc

risposta

6

Questo perché https non è abilitato localmente sul computer, è possibile abilitarlo o in alternativa è possibile eseguire senza SSL sul localhost. Per fare ciò, modifica la funzione in modo che assomigli a:

def get_home(): 
    return 'http://' + request.host + '/' 
+0

Stupido che voglio sapere: come abilitare https? – PEZ

+1

Grazie - questo risolve davvero il problema! Sembra che il tutorial di Heroku non sia pronto per il prime time perché non risolve questo problema. Ma almeno ora ho un modo per continuare. – garyrob

Problemi correlati