2016-04-12 53 views
9

Buonasera, ho appena visto che Facebook ha pubblicato il suo toolkit di messenger bot e l'ho subito saltato dentro per saperne di più e magari provare a fare da solo.Posso usare localhost come richiamo URL in un webook messenger

Il mio problema è che non ho un sito Web https in esecuzione e richiede un URL valido https. Ho provato ad usare il mio web server locale che ha un certificato ma non funziona.

La mia domanda è se è possibile farlo utilizzando un url localhost.

Grazie in anticipo

+0

ho provato usando ngrok come descritto nel link qui sotto e ho ottenuto funziona. https://sumwu.me/blog/page/9/how-to-create-a-facebook-messenger-bot/ – bvsdev

risposta

13

In realtà questo è possibile con localhost. Utilizzare . Ti consente di aprire localhost sul Web pubblico, su http o su https. Tuttavia, dovrebbe essere usato solo per i test.

+0

ngrok non funzionerà se più sviluppatori lavorano sullo stesso webhook/chatbot – Gurpreet

0

La mia domanda è se questo è possibile essere fatto utilizzando un URL localhost a tutti.

No, certo che non è - perché ciò che tale “callback” significa in realtà, è che Facebook fa una richiesta al server - e che è quasi impossibile con localhost.


Un certificato SSL valido per il tuo sito Web è facile da ottenere gratuitamente in questi giorni, tramite LetsEncrypt. E anche se non è disponibile sul tuo server, c'è ancora StartSSL, che fornisce gratuitamente certificati di base. Tutto ciò di cui hai bisogno è un server su cui puoi installarli o caricarli, o qualsiasi altro meccanismo che il tuo hoster fornisce. (E se non forniscono alcun, allora potrebbe essere il momento di passare.)

+0

Grazie per la risposta, ho chiesto questo perché ci sono alcune opzioni che consentono di utilizzare localhost come un url in alcune app di Facebook. Ma come hai detto è impossibile. Grazie per il tuo tempo. – Query

+0

Sì, puoi testare per esempio Login di Facebook con localhost - ma è perché tutto accade nel tuo browser, è solo un reindirizzamento a Facebook e da lì al tuo localhost. E il tuo browser sa cosa è localhost e come raggiungerlo, quindi non c'è alcun problema qui - ma Facebook no.(O si potrebbe dire che ovviamente lo sanno anche - ma se il server di Facebook inoltra una richiesta a 127.0.0.1, non otterrà molto.) – CBroe

1

Se vuoi testare i webhook sul tuo ambiente locale, proverei ultrahook.com, puoi ottenere una chiave API gratuitamente e lo strumento crea un tunnel da un URL pubblico al tuo computer. Questo è dalla loro pagina delle domande frequenti:

Si scarica ed esegue il client UltraHook sul computer. Lo si collega ai server UltraHook nel cloud e crea un tunnel da un endpoint pubblico sui nostri server sul computer. Qualsiasi richiesta HTTP POST inviata al punto finale pubblico verrà inviata attraverso il tunnel una consegna a un endpoint privato accessibile dal computer.

L'ho usato per testare webhook di provider diversi (come gateway di pagamento). Nel vostro computer, è possibile eseguire qualcosa di simile:

ultrahook <subdomain> http://localhost:8000/webhook/

e quindi configurare l'URL webhook nel servizio esterno a qualcosa di simile <subdomain>.ultrahook.com