kv-music/js/proxy-utils.js

20 lines
645 B
JavaScript

const PROXIES = [
{ url: 'https://audio-proxy.binimum.org/proxy-audio', param: 'url=' },
{ url: 'https://corsproxy.io/?', param: '' },
];
let proxyIndex = 0;
export const getProxyUrl = (url) => {
if (!url || typeof url !== 'string') return url;
if (window.__tidalOriginExtension) return url;
if (url.startsWith('blob:')) return url;
if (url.startsWith('https://audio-proxy.binimum.org/')) return url;
const proxy = PROXIES[proxyIndex % PROXIES.length];
return `${proxy.url}${proxy.param}${encodeURIComponent(url)}`;
};
export const rotateProxy = () => {
proxyIndex = (proxyIndex + 1) % PROXIES.length;
};