qqqqqqqqqqqqqqqq

此页面自动注册Service Worker,将所有API请求代理到Google Generative Language API,并添加跨域支持

功能特性

  • 自动注册Service Worker代理所有API请求
  • 请求无缝转发至generativelanguage.googleapis.com
  • 自动添加CORS头解决跨域问题
  • 支持GET、POST、HEAD方法请求转发
  • 自动处理OPTIONS预检请求
  • 请求头与请求体完整传递
  • 响应状态码和头部完整保留

实现代码

// 注册Service Worker
const registerPromise = navigator.serviceWorker
    .register('proxy-service-worker.js')
    .then(function(registration) {
        // 定期更新Service Worker
        setInterval(() => registration.update(), 60 * 60 * 1000);
        return registration;
    });

// proxy-service-worker.js内容:
self.addEventListener('fetch', event => {
    event.respondWith(handleRequest(event.request));
});

async function handleRequest(request) {
    // 请求代理逻辑...
    const url = new URL(request.url);
    const targetURL = new URL('https://generativelanguage.googleapis.com');
    
    targetURL.pathname = url.pathname;
    targetURL.search = url.search;
    
    const newRequest = new Request(targetURL, {
        method: request.method,
        headers: request.headers,
        body: request.body
    });
    
    // 添加CORS支持...
}

服务状态

Service Worker状态
正在注册中...
代理目标
https://generativelanguage.googleapis.com
支持的HTTP方法
GET, HEAD, POST, OPTIONS
CORS支持
已启用 (Access-Control-Allow-Origin: *)
当前作用域
/

使用说明

1. 此页面自动注册Service Worker代理服务

2. 所有API请求将转发到Google服务器

3. 在您的应用中直接调用API无需考虑跨域问题

4. 示例API调用:

fetch('/v1/models') .then(response => response.json()) .then(data => console.log(data));