Skip to content

Commit

Permalink
Merge pull request #42 from MiracleUFO/patch-fallback-proxy
Browse files Browse the repository at this point in the history
fix(proxy): add new proxy, make unstable proxy last fallback
  • Loading branch information
MiracleUFO authored Jul 7, 2024
2 parents 1f779f0 + c126c2c commit fee8d29
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
6 changes: 4 additions & 2 deletions src/constants/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,9 @@ const NODE_DEVELOPMENT = 'development';
const NODE_ENV = process.env.NODE_ENV;
const IS_DEVELOPMENT_OR_TEST = NODE_ENV && [NODE_DEVELOPMENT, NODE_TEST].includes(NODE_ENV);

const PROXY_URL = 'https://react-g-translator-proxy-express.onrender.com/translate';
const PROXY_URL_ALT = 'https://react-g-translator-proxy.vercel.app/api';
const PROXY_URL = 'https://react-g-translator-proxy.vercel.app/api';
const PROXY_URL_ALT = 'https://react-g-translator-proxy-2.vercel.app/api';
const PROXY_URL_RENDER = 'https://react-g-translator-proxy-express.onrender.com/translate';
const SERVER_URL = REACT_APP_TRANSLATE_SERVER_URL || VITE_APP_TRANSLATE_SERVER_URL || NEXT_PUBLIC_APP_TRANSLATE_SERVER_URL || '';
const SERVER_TOKEN = REACT_APP_TRANSLATE_SERVER_TOKEN || VITE_APP_TRANSLATE_SERVER_TOKEN || NEXT_PUBLIC_APP_TRANSLATE_SERVER_TOKEN || '';

Expand Down Expand Up @@ -60,6 +61,7 @@ export {
IS_DEVELOPMENT_OR_TEST,
PROXY_URL,
PROXY_URL_ALT,
PROXY_URL_RENDER,
SERVER_URL,
SERVER_TOKEN,
DEFAULT_PROPS,
Expand Down
6 changes: 6 additions & 0 deletions src/utils/translate.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import {
PROXY_URL_ALT,
SERVER_URL,
SERVER_TOKEN,
PROXY_URL_RENDER,
} from '../constants';
import language from '../types/language';

Expand All @@ -30,6 +31,11 @@ const translate = async (text: string, from?: language, to?: language) => {

if (response.status !== 200) response = await fetch(SERVER_URL || PROXY_URL_ALT, requestOptions);

if (response.status !== 200) {
// unstable (fallback) server
response = await fetch(SERVER_URL || PROXY_URL_RENDER, requestOptions);
}

if (response.status === 200) return response.json();

const error = new Error(`${response.status} - ${response.statusText}`);
Expand Down

0 comments on commit fee8d29

Please sign in to comment.