电子档案
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.6 KiB

  1. /* Licensed under the Apache License, Version 2.0 (the "License");
  2. * you may not use this file except in compliance with the License.
  3. * You may obtain a copy of the License at
  4. *
  5. * http://www.apache.org/licenses/LICENSE-2.0
  6. *
  7. * Unless required by applicable law or agreed to in writing, software
  8. * distributed under the License is distributed on an "AS IS" BASIS,
  9. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. * See the License for the specific language governing permissions and
  11. * limitations under the License.
  12. */
  13. /**
  14. * Configure the HTTP provider such that no caching happens when fetching
  15. * a resource using $http.
  16. */
  17. flowableModule.factory('NotPermittedInterceptor', [ '$q', '$window', function($q, $window) {
  18. return {
  19. responseError: function ( response ) {
  20. if (response.status === 403) {
  21. $window.location.href = FLOWABLE.CONFIG.contextRoot;
  22. $window.location.reload();
  23. return $q.reject(response);
  24. }
  25. else{
  26. return $q.reject(response);
  27. }
  28. }
  29. }
  30. }]);
  31. flowableModule.config(['$httpProvider', function($httpProvider) {
  32. if (!$httpProvider.defaults.headers.get) {
  33. $httpProvider.defaults.headers.get = {};
  34. }
  35. $httpProvider.defaults.headers.get['Cache-Control'] = 'no-cache, no-store, must-revalidate';
  36. $httpProvider.defaults.headers.get['Pragma'] = 'no-cache';
  37. $httpProvider.defaults.headers.get['Expires'] = '0';
  38. $httpProvider.interceptors.push('NotPermittedInterceptor');
  39. }]);