Skip to content

0x19/gofo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

License Build Status Go 1.3 Ready Go 1.4 Ready

HTTP Fan Out Server written in Go

What it does is very simple. It listens for incoming HTTP requests on registered uri (-in) and forwards what it gets to registered listeners (-out).

This is quite useful if you need to listen for callbacks from external service if same one does not support notifying your application on multiple urls.

Whenever you start service it will give you full url that you can just copy and paste to external service.

2015/01/01 17:35:01 Listen ▶ NOTICE  You can pass following URL to external service: http://127.0.0.1:9991/callbacks/sms

Running behind NAT?

Well that's easy today :) You can always use Ngrok! It's free and can for sure very efficiently tunnel out your local machine. As well written in Go

Issues?

Please reach me over nevio.vesic@gmail.com or submit new Issue. I'd prefer tho if you would submit issue.

Example

./gofo -host 127.0.0.1 -port 9991 -in callbacks/sms -out "http://webhookr.com/one, http://webhookr.com/one/two, http://webhookr.com/one/three"

2015/01/01 17:35:01 prepareForwarders ▶ DEBUG  Validating attached forwarder: http://webhookr.com/one
2015/01/01 17:35:01 prepareForwarders ▶ DEBUG  Validating attached forwarder: http://webhookr.com/one/two
2015/01/01 17:35:01 prepareForwarders ▶ DEBUG  Validating attached forwarder: http://webhookr.com/one/three
2015/01/01 17:35:01 AttachHttpRule ▶ DEBUG  Attaching new rule: /callbacks/sms -> [http://webhookr.com/one http://webhookr.com/one/two http://webhookr.com/one/three]
2015/01/01 17:35:01 Listen ▶ NOTICE  Listening for new incoming connections 127.0.0.1:9991
2015/01/01 17:35:01 Listen ▶ NOTICE  You can pass following URL to external service: http://127.0.0.1:9991/callbacks/sms

About

Lightweight HTTP callback fan out server written in Go

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages