These terms seem to be very similar which confuses me a lot.
So far I know:
- A protocol is a set of rules,methods that allow communication between two systems, it is like a real life lenguage and the systems are the two people talking.
- An API is a software that allows communication from one system to another, it is like a waitress(API) that takes request from a client to the kitchen and sends back the response from the kitchen to the client.
Web Servives are APIS that uses http protocol to communicate with the client and the server. In the previous example of the waitress, the http protocol would be the lenguage that the client,waitress and the kitchen use to communicate to each other.
Middleware is the software that runs the API (?)
Am I right?