cloudflare work代码
-
- 反正测试了不支持官方的function all
-
- 不支持32k
-
- 也不支持4v
-
- 反正不知道这个网站从哪里搞来的蹩脚玩意,薅起来吧
-
- 更离谱着是都不需要秘钥
-
- 下面cloudflare 的work代码自己部署玩玩吧
addEventListener("fetch", event => {
event.respondWith(handleRequest(event.request))
})
async function handleRequest(request) {
// 确保请求是 POST 请求,并且路径正确
if (request.method === "POST" && new URL(request.url).pathname === "/v1/chat/completions") {
const url = 'https://multillm.ai-pro.org/api/openai-completion'; // 目标 API 地址
const headers = new Headers(request.headers);
// 添加或修改需要的 headers
headers.set('Content-Type', 'application/json');
// 获取请求的 body 并解析 JSON
const requestBody = await request.json();
const stream = requestBody.stream; // 获取 stream 参数
// 构造新的请求
const newRequest = new Request(url, {
method: 'POST',
headers: headers,
body: JSON.stringify(requestBody) // 使用修改后的 body
});
try {
// 向目标 API 发送请求
const response = await fetch(newRequest);
// 根据 stream 参数确定响应类型
if (stream) {
// 处理流式响应
const { readable, writable } = new TransformStream();
response.body.pipeTo(writable);
return new Response(readable, {
headers: response.headers
});
} else {
// 正常返回响应
return new Response(response.body, {
status: response.status,
headers: response.headers
});
}
} catch (e) {
// 如果请求失败,返回错误信息
return new Response(JSON.stringify({ error: 'Unable to reach the backend API' }), { status: 502 });
}
} else {
// 如果请求方法不是 POST 或路径不正确,返回错误
return new Response('Not found', { status: 404 });
}
}
使用示例:
curl --location 'https://ai-pro-free.aivvm.com/v1/chat/completions' \
--header 'Content-Type: application/json' \
--data '{
"model": "gpt-4-turbo",
"messages": [
{
"role": "user", "content": "鲁迅为什么打周树人"
}],
"stream": true
}'
世界是个炒菜班子