We are moving towards developing a web app in a micro-services architecture. We thought about running the services behind a API gateway that will handle authentication and will proxy the requests to the appropriate services. We have encountered a problem while setting up the development environment. How can we develop a service in a local machine (laptop) and test and run it in a way that is similar to the production (behind the gateway)?
Consider the following requirements:
- Inter process communication (B2B)
- Manage and sync different versions
- Access the service with authentication token (produced by the gateway)
EDIT
Our Our API gateway is sitting in between the client (browser, mobile) and receives the requesqs. Every request should have a jwt token attached to it (generated by the gateway) or else redirected to a 3rd party provider for authentication.
So after authenticating the user (by the cookie or authorization header token) we proxy the request to the specified service.