multiple JS files (hosted by me) are embedded in various website's code as script tags to which I don't have access to. So, I couldn't invalidate cache by maintaining a fingerprint in the URL, or through URL parameters.
The files are quite large, so caching is mandatory. What are other ways there to invalidate browser cache apart from modifying the src?
The solution I'm considering now is to maintain a wrapper script which is not cached, that calls the actual scripts. By this way, I could maintain some sort versioning in the wrapper script. This does not seem elegant, are there other ways?
If these don't work out, I'll consider reducing the expires header.
I've done other optimisations like minifying, using a CDN etc.