CoolFace
Apppublic

weenie/open-reverse-proxy

sourceHugging Faceupdated 3y agoView on Hugging Face
0likes
server.js32 linesDownload Raw Back to root
1 2const express = require('express');3const proxy = require('express-http-proxy');4const app = express();5const targetUrl = 'https://api.openai.com';6const openaiKey = process.env.OPENAI_KEY7const port = 7860;8const baseUrl = getExternalUrl(process.env.SPACE_ID);9 10app.use('/api', proxy(targetUrl, {11  proxyReqOptDecorator: (proxyReqOpts, srcReq) => {12    // Modify the request headers if necessary13    proxyReqOpts.headers['Authorization'] = 'Bearer '+openaiKey;14    return proxyReqOpts;15  },16}));17 18app.get("/", (req, res) => {19  res.send(`This is your OpenAI Reverse Proxy URL: ${baseUrl}`);20});21 22function getExternalUrl(spaceId) {23  try {24    const [username, spacename] = spaceId.split("/");25    return `https://${username}-${spacename.replace(/_/g, "-")}.hf.space/api/v1`;26  } catch (e) {27    return "";28  }29}30 31app.listen(port, () => {32  console