April 21, 2019
If your application needs to respond to webhooks, you'll need some way to expose localhost to the internet. smee.io is a small service that uses Server-Sent Events to proxy payloads from the webhook source, then transmit them to your locally running application.
The service is fully open source, so you can just grab the code from https://github.com/probot/smee.io if you want to create your own SMEE service. And the client side code is at https://github.com/probot/smee-client for you to get started.
The folks behind SMEE is Probot, which is dedicated to create GitHub apps to automate and improve your workflow. It’s also a bot framework for GitHub. “It’s the glue for interacting with GitHub, and everything else…”
It’s worth to check the projects in their github page if you are working in the devops field. Also check out the talk Extending with GitHub: easy integrations with Probot - GitHub Universe 2017 by Jamie Jones from GitHub.
The other useful service/tool is Fanout, this diagram explains how it works.
You can use their service Fanout Cloud with either free or paid plans, or install your own servers since it has self-hosting option for both commercial and open source offerings. The open source version is called Pushpin which is more empharsizing the realtime and drop-in proxy server for your API features. The code for Pushpin is at https://github.com/fanout/pushpin.
The Fanout folks also have the open source project Webhookinbox, as well as a free service at http://webhookinbox.com/. The webhookinbox receives HTTP requests and captures the data for later inspection. It is useful for debugging HTTP callbacks or seeing what a browser/client is sending.
The full suite of software from Fanout is at https://fanout.io/download/
Also I found this service at https://webhook.site/ pretty useful too.
In my project, I was using SMEE with the combination of webhookinbox to fullfill my needs and pretty happy with both of them. Thanks a lot to the folks there.
John Li's stuff for work, study and social activities
You can follow him on Twitter