diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index 135e762..2bc8017 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -27,8 +27,6 @@ jobs:
- run: npm ci
- run: npm run build
- env:
- VITE_CORS_PROXY_URL: ${{ vars.VITE_CORS_PROXY_URL }}
- run: cp dist/index.html dist/404.html
- uses: actions/upload-pages-artifact@v3
diff --git a/env.d.ts b/env.d.ts
index f4de909..084d059 100644
--- a/env.d.ts
+++ b/env.d.ts
@@ -1,7 +1,7 @@
///
interface ImportMetaEnv {
- readonly VITE_CORS_PROXY_URL?: string;
+ // no custom env vars needed — production uses corsproxy.io
}
declare module '*.vue' {
diff --git a/src/http-common.ts b/src/http-common.ts
index 03dbf71..e0f0d0b 100644
--- a/src/http-common.ts
+++ b/src/http-common.ts
@@ -1,14 +1,31 @@
import axios from 'axios';
-// Public API client — proxied through Vite in dev, Cloudflare Worker in prod.
+const TARGET_BASE = 'https://www.reservauto.net';
+
+// Public API client — proxied through Vite in dev, corsproxy.io in prod.
const apiClient = axios.create({
- baseURL: import.meta.env.DEV ? '/api' : (import.meta.env.VITE_CORS_PROXY_URL || 'https://communauto-cors-proxy..workers.dev'),
+ baseURL: import.meta.env.DEV ? '/api' : TARGET_BASE,
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
});
+if (!import.meta.env.DEV) {
+ apiClient.interceptors.request.use((config) => {
+ const targetUrl = new URL(config.url!, TARGET_BASE);
+ if (config.params) {
+ for (const [k, v] of Object.entries(config.params as Record)) {
+ if (v !== undefined && v !== null) targetUrl.searchParams.set(k, String(v));
+ }
+ config.params = undefined;
+ }
+ config.baseURL = '';
+ config.url = `https://corsproxy.io/?url=${encodeURIComponent(targetUrl.toString())}`;
+ return config;
+ });
+}
+
// Authenticated REST API client — direct to restapifrontoffice
const restApi = axios.create({
baseURL: 'https://restapifrontoffice.reservauto.net',