Use deno for any large model secure proxy API to avoid leaking real IP and domain information
To solve the problem of certain areas can not directly request api.openai.com and so on big model API, or because the agent leaks information leading to blocking the account, before the use of CF proxy, may leak your IP, now there is a safer program.
1. First enter the deno official website to register an account
2. Create a project
Go to https://dash.deno.com/account/projects and click on "New Playground".

3. Paste the code and save it
import { serve } from "https://deno.land/std/http/server.ts"; const apiMapping = { '/discord': 'https://discord.com/api', '/telegram': 'https://api.telegram.org', '/openai': 'https://api.openai.com', '/claude': 'https://api.anthropic.com', '/gemini': 'https://generativelanguage.googleapis.com', '/meta': 'https://www.meta.ai/api', '/groq': 'https://api.groq.com/openai', '/xai': 'https://api.x.ai', '/cohere': 'https://api.cohere.ai', '/huggingface': 'https://api-inference.huggingface.co', '/together': 'https://api.together.xyz', '/novita': 'https://api.novita.ai', '/portkey': 'https://api.portkey.ai', '/fireworks': 'https://api.fireworks.ai', '/openrouter': 'https://openrouter.ai/api' }; serve(async (request) => { const url = new URL(request.url); const pathname = url.pathname; if (pathname === '/' || pathname === '/index.html') { return new Response('Service is running!', { status: 200, headers: { 'Content-Type': 'text/html' } }); } if (pathname === '/robots.txt') { return new Response('User-agent: *\nDisallow: /', { status: 200, headers: { 'Content-Type': 'text/plain' } }); } const [prefix, rest] = extractPrefixAndRest(pathname, Object.keys(apiMapping)); if (!prefix) { return new Response('Not Found', { status: 404 }); } const targetUrl = `${apiMapping[prefix]}${rest}`; try { const headers = new Headers(); const allowedHeaders = ['accept', 'content-type', 'authorization']; for (const [key, value] of request.headers.entries()) { if (allowedHeaders.includes(key.toLowerCase())) { headers.set(key, value); } } const response = await fetch(targetUrl, { method: request.method, headers: headers, body: request.body }); const responseHeaders = new Headers(response.headers); responseHeaders.set('X-Content-Type-Options', 'nosniff'); responseHeaders.set('X-Frame-Options', 'DENY'); responseHeaders.set('Referrer-Policy', 'no-referrer'); return new Response(response.body, { status: response.status, headers: responseHeaders }); } catch (error) { console.error('Failed to fetch:', error); return new Response('Internal Server Error', { status: 500 }); } }); function extractPrefixAndRest(pathname, prefixes) { for (const prefix of prefixes) { if (pathname.startsWith(prefix)) { return [prefix, pathname.slice(prefix.length)]; } } return [null, null]; }

4. Usage
The default domain name is https://hungry-lamb-22.deno.dev/
interviewshttps://hungry-lamb-22.deno.dev/xai
is equivalent to visiting https://api.x.ai/
Following the format in the code, you can add a new big model request address
5. Customized domain name
Go to Settings and bind your own domain name

Shared Proxy Address
代理地址 | 源地址 |
---|---|
https://api-proxy.me/anthropic | https://api.anthropic.com |
https://api-proxy.me/cerebras | https://api.cerebras.ai |
https://api-proxy.me/cohere | https://api.cohere.ai |
https://api-proxy.me/discord | https://discord.com/api |
https://api-proxy.me/fireworks | https://api.fireworks.ai |
https://api-proxy.me/gemini | https://generativelanguage.googleapis.com |
https://api-proxy.me/groq | https://api.groq.com/openai |
https://api-proxy.me/huggingface | https://api-inference.huggingface.co |
https://api-proxy.me/meta | https://www.meta.ai/api |
https://api-proxy.me/novita | https://api.novita.ai |
https://api-proxy.me/nvidia | https://integrate.api.nvidia.com |
https://api-proxy.me/openai | https://api.openai.com |
https://api-proxy.me/openrouter | https://openrouter.ai/api |
https://api-proxy.me/portkey | https://api.portkey.ai |
https://api-proxy.me/telegram | https://api.telegram.org |
https://api-proxy.me/together | https://api.together.xyz |
https://api-proxy.me/xai | https://api.x.ai |
© Copyright notes
The copyright of the article belongs to the author, please do not reprint without permission.
Related posts
No comments...