Salut ! Oui, c’est mon troisième post de la journée, mais à la base je voulais écrire mon article sur ngrok
, et comme j’étais tout fan d’avoir trouvé Hexo, ben forcément j’en ai parlé. Allez c’est parti.
Mon problème
Lorsque je dois faire des webhooks, c’est à dire des webservices appelés par d’autres plateformes lorsqu’un évènement est déclenché (une nouvelle PR sur Github, une création de room sur Hipchat, un tweet contenant un certain hashtag, un message envoyé sur un bot Facebook Messenger, etc.), je suis souvent confronté au problème du développement à l’aveugle.
Premièrement, la plateforme en question doit être en mesure de contacter mon webservice. C’est déjà peu évident quand on est OKLM sur notre environnement de dev.
Deuxièmement, les plateformes en question requièrent, quasi systématiquement, des URLs en HTTPS. Ce qui est tout à fait normal, entendons-nous, mais quand même assez chiant.
La solution (de merde)
Il suffit de se prendre un p’tit serveur d’intégration, puis de déployer systématiquement nos nouveaux devs dessus, et de lui autogénérer un certificat SSL, et puis voilà. C’est compliqué, ça, franchement ?
Bon, ok, on n’a peut-être pas forcément envie de dépenser de l’argent pour un serveur de test, et les certificats auto-signés, ça pue du cul. Mais alors, comment qu’on fait ?
La solution (la vraie)
La solution s’appelle Ngrok. Il suffit de se rendre sur la page de téléchargement, de télécharger ce p’tit soft, et de le lancer :
|
|
Si vous avez déjà un vhost local, il vaut mieux le lancer comme ça :
|
|
ngrok
va créer un tunnel entre votre environnement de dev et son site, et par la même, des adresses temporaires http et https :
|
|
Cool non ? Fournissez à votre plateforme appelante l’url https://e1fccf46.ngrok.io
et vous pouvez tester votre webhook simplement.
Allez de rien ! La bise ;)