An ASP.NET Web API HTTP caching implementation both on client and server