diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..fb441f6 --- /dev/null +++ b/.env.example @@ -0,0 +1,4 @@ +PORT=6001 +VERCEL_PROJECT_PRODUCTION_URL=http://localhost:6001 +LOCAL_API_BASE_URL=http://localhost:6001/api +NEXT_PUBLIC_API_BASE_URL=http://localhost:6001/api diff --git a/.gitignore b/.gitignore index 470e842..c0354f9 100644 --- a/.gitignore +++ b/.gitignore @@ -31,7 +31,7 @@ yarn-error.log* .pnpm-debug.log* # env files (can opt-in for committing if needed) -.env* +.env # vercel .vercel diff --git a/src/lib/axios.ts b/src/lib/axios.ts index 3d32866..1e748c8 100644 --- a/src/lib/axios.ts +++ b/src/lib/axios.ts @@ -1,11 +1,11 @@ import axios from 'axios'; const api = axios.create({ - baseURL: process.env.NEXT_PUBLIC_API_BASE_URL || 'http://localhost:4000/api', + baseURL: process.env.LOCAL_API_BASE_URL || 'http://localhost:4000/api', headers: { 'Content-Type': 'application/json', }, - withCredentials: true, // Enable sending cookies with requests + withCredentials: true, }); api.interceptors.request.use( diff --git a/src/lib/client-axios.ts b/src/lib/client-axios.ts new file mode 100644 index 0000000..cb9be25 --- /dev/null +++ b/src/lib/client-axios.ts @@ -0,0 +1,18 @@ +import axios from 'axios'; + +const clientApi = axios.create({ + baseURL: process.env.NEXT_PUBLIC_API_BASE_URL || 'http://localhost:4000/api', + headers: { + 'Content-Type': 'application/json', + }, + withCredentials: true, +}); + +clientApi.interceptors.request.use( + (config) => { + return config; + }, + (error) => Promise.reject(error), +); + +export default clientApi; diff --git a/src/services/contact.ts b/src/services/contact.ts index 3fd3029..20935ff 100644 --- a/src/services/contact.ts +++ b/src/services/contact.ts @@ -1,4 +1,4 @@ -import api from '@/lib/axios'; +import clientApi from '@/lib/client-axios'; interface Payload { first_name: string; @@ -9,5 +9,5 @@ interface Payload { } export async function setContact(payload: Payload) { - await api.post('/contact', payload); + await clientApi.post('/contact', payload); }