commit 8b7bbbb38aad472e46c589634dc1931e4e331852
parent 97590d3b059de82f8e56234b0a47c6503dfedfc5
Author: Sergej Orlov <wladimirych@gmail.com>
Date: Sun, 25 Jun 2023 10:28:28 +0200
Allow to bypass CORS proxy for particular urls.
Fixes #1204
Diffstat:
3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/eslint_rules/base.js b/eslint_rules/base.js
@@ -236,7 +236,7 @@ module.exports = {
'prefer-numeric-literals': 'error',
'prefer-object-spread': 'error',
'prefer-promise-reject-errors': 'error',
- 'prefer-regex-literals': 'error',
+ // 'prefer-regex-literals': 'error', // checked, declined
'prefer-rest-params': 'error',
'prefer-spread': 'error',
// 'prefer-template': 'error', // checked, declined
diff --git a/src/config.js b/src/config.js
@@ -17,7 +17,8 @@ const config = {
tracksStorageServer: 'https://tracks.nakarte.me',
wikimapiaTilesBaseUrl: 'https://proxy.nakarte.me/wikimapia/',
mapillaryRasterTilesUrl: 'https://mapillary.nakarte.me/{z}/{x}/{y}',
- ...secrets
+ urlsBypassCORSProxy: [new RegExp('^https://pkk\\.rosreestr\\.ru/', 'u')],
+ ...secrets,
};
export default config;
diff --git a/src/lib/CORSProxy/index.js b/src/lib/CORSProxy/index.js
@@ -1,5 +1,10 @@
import config from '~/config';
export default function urlViaCorsProxy(url) {
+ for (let pattern of config.urlsBypassCORSProxy) {
+ if (pattern.test(url)) {
+ return url;
+ }
+ }
return config.CORSProxyUrl + url.replace(/^(https?):\/\//u, '$1/');
}