I am developing a large angular.js / mvc webapi SPA that resides on private networks. When I deploy a new version of the app to the customer's site via an installer, the client's browser software just keeps running the old module, even across login / logout. The browser just uses the cached version of the application's main module.
In the past, on other platforms, like ASP.NET, I have used a web service that publishes a version, and added ?version=123 to every javascript resource request in order to force the client version to stay up to date, regardless of how aggressively the client browser caches javascript files.
What is the best strategy to solve this in a single page application that stays in memory. If I hit a webservice in angular, how can I go around the route provider and just force it to re-load the actual javascript file that hosts the main application module?
What strategy do installed web-app developers in the angular space use to solve this?