Skip to content

Instantly share code, notes, and snippets.

@jhaber
Last active April 21, 2022 16:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jhaber/b29eeb5feb4046d7bd6439a9579e1805 to your computer and use it in GitHub Desktop.
Save jhaber/b29eeb5feb4046d7bd6439a9579e1805 to your computer and use it in GitHub Desktop.
async function forwardRequest(request) {
let targetHublet;
if (hasApiKey(request)) {
targetHublet = extractHubletFromApiKey(request);
} else if (hasOAuthToken(request)) {
targetHublet = extractHubletFromOAuthToken(request);
} else {
return new Response('Request is missing auth', { status: 401 });
}
return fetch(request, {
cf: { resolveOverride: `api-${targetHublet}.hubapi.com` },
});
}
addEventListener('fetch', event => {
event.respondWith(forwardRequest(event.request));
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment