利用Cloudflare Workers搭建的一些API


前言

想来也是闲来无事,看到了 Cloudflare Workers 新加入了AI机器学习的功能,又想到之前一直想用 Workers 写一些接口方便自己用,于是趁着假期搭建几个API来玩玩。

API

1. 访问接口的IP地址

API地址

getip.api.randallanjie.com

请求方式

GETPOSTPUTDELETEPATCH 直接请求即可

访问效果

API代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
addEventListener("fetch", (event) => {
event.respondWith(
handleRequest(event.request).catch(
(err) => new Response(err.stack, { status: 500 })
)
);
});

/**
* 以纯文本形式返回用户真实IP
* @author Randall
* @date 2023-10-04
* @param {Request} request
* @returns {Promise<Response>}
*/
async function handleRequest(request) {
const clientIP = request.headers.get("CF-Connecting-IP")
return new Response(clientIP);
}

2. 翻译

API地址

translate.api.randallanjie.com

请求方式

GET

URL查询参数

  • text (必需): 要翻译的文本。
  • source_lang (可选): 源语言的代码。默认值为 auto,此时将自动检测文本的语言。
  • target_lang (可选): 目标语言的代码。默认值为 auto,此时将根据源语言自动设置目标语言。

示例:

1
https://translate.api.randallanjie.com?text=Tell%20me%20a%20joke%20about%20Cloudflare&source_lang=auto&target_lang=auto
POST

请求体格式为JSON,示例:

1
2
3
4
5
{
"text": "Tell me a joke about Cloudflare",
"source_lang": "auto",
"target_lang": "auto"
}

参数:

  • text (必需): 要翻译的文本。
  • source_lang (可选): 源语言的代码。默认值为 auto,此时将自动检测文本的语言。
  • target_lang (可选): 目标语言的代码。默认值为 auto,此时将根据源语言自动设置目标语言。

访问效果

访问的URL是: https://translate.api.randallanjie.com?text=Tell me a joke about Cloudflare&source_lang=auto&target_lang=auto

API代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import { Ai } from './vendor/@cloudflare/ai';

export default {
async fetch(request, env) {
const ai = new Ai(env.AI);
let inputs;

// 检查请求方法
if (request.method === 'POST') {
// 如果是POST请求, 从请求体中获取输入数据
const requestBody = await request.json();
if (!requestBody.text) {
return new Response('No text provided', { status: 400 });
}
inputs = {
text: requestBody.text,
source_lang: requestBody.source_lang || 'auto',
target_lang: requestBody.target_lang || 'auto'
};
} else if (request.method === 'GET') {
// 如果是GET请求, 从URL查询参数中获取输入数据
const url = new URL(request.url);
const text = url.searchParams.get('text');
if (!text) {
return new Response('No text provided', { status: 400 });
}
inputs = {
text: text,
source_lang: url.searchParams.get('source_lang') || 'auto',
target_lang: url.searchParams.get('target_lang') || 'auto'
};
} else {
// 如果请求方法不是POST也不是GET, 返回一个错误响应
return new Response('Invalid request method', { status: 405 });
}

// 检测输入文本的语言,并设置目标语言
if (inputs.source_lang === 'auto' || inputs.target_lang === 'auto') {
// 简单的语言检测逻辑:检查文本的第一个字符是否是ASCII字符
const isAscii = /^[ -~]/.test(inputs.text.charAt(0));
inputs.source_lang = isAscii ? 'en' : 'zh';
inputs.target_lang = isAscii ? 'zh' : 'en';
}

// 运行AI并获取响应
const response = await ai.run('@cf/meta/m2m100-1.2b', inputs);

return new Response(JSON.stringify({ response }), { status: 200, headers: { 'Content-Type': 'application/json' } });
}
};

3. 语音转文字

API地址

voice2text.api.randallanjie.com

请求方式

GET

URL查询参数

  • audioUrl (必需): 音频文件的URL地址,支持mp3、wav、ogg格式

示例:

1
https://voice2text.api.randallanjie.com?audioUrl=https://github.com/Azure-Samples/cognitive-services-speech-sdk/raw/master/samples/cpp/windows/console/samples/enrollment_audio_katie.wav
POST

请求体格式为JSON,示例:

1
2
3
{
"audioUrl": "https://github.com/Azure-Samples/cognitive-services-speech-sdk/raw/master/samples/cpp/windows/console/samples/enrollment_audio_katie.wav"
}

参数:

  • audioUrl (必需): 音频文件的URL地址,支持mp3、wav、ogg格式

访问效果

访问的URL是: https://voice2text.api.randallanjie.com?audioUrl=https://github.com/Azure-Samples/cognitive-services-speech-sdk/raw/master/samples/cpp/windows/console/samples/enrollment_audio_katie.wav

API代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import { Ai } from './vendor/@cloudflare/ai';

export default {
async fetch(request, env) {
try {
let audioData;

if (request.method === 'POST') {
// 如果是POST请求, 从请求体中获取音频数据或音频文件的URL
const requestBody = await request.json();
if (requestBody.audio) {
// 如果请求体包含音频数据
audioData = requestBody.audio;
} else if (requestBody.audioUrl) {
// 如果请求体包含音频文件的URL
const audioResponse = await fetch(requestBody.audioUrl);
if (!audioResponse.ok) {
throw new Error('Failed to fetch audio from URL');
}
const blob = await audioResponse.arrayBuffer();
audioData = [...new Uint8Array(blob)];
} else {
throw new Error('Missing audio or audioUrl in request body');
}
} else if (request.method === 'GET') {
// 如果是GET请求, 从URL查询参数中获取音频文件的URL
const url = new URL(request.url);
const audioUrl = url.searchParams.get('audioUrl');
if (audioUrl) {
const audioResponse = await fetch(audioUrl);
if (!audioResponse.ok) {
throw new Error('Failed to fetch audio from URL');
}
const blob = await audioResponse.arrayBuffer();
audioData = [...new Uint8Array(blob)];
} else {
throw new Error('Missing audioUrl in query parameters');
}
} else {
// 如果请求方法不是POST也不是GET, 返回一个错误响应
return new Response('Invalid request method', { status: 405 });
}

const ai = new Ai(env.AI);
const inputs = { audio: audioData };
const response = await ai.run('@cf/openai/whisper', inputs);

return new Response(JSON.stringify({ response }), {
status: 200,
headers: { 'Content-Type': 'application/json' }
});
} catch (error) {
return new Response(error.message, { status: 500 });
}
}
};

4. 图像分类

API地址

classify-pictures.api.randallanjie.com

请求方式

GET

URL查询参数

  • imageUrl (必需): 图片文件的URL地址,支持jpg、png、gif格式

示例:

1
https://classify-pictures.api.randallanjie.com?imageUrl=https://cataas.com/cat
POST

请求体格式为JSON,示例:

1
2
3
{
"imageUrl": "https://cataas.com/cat"
}

或者直接上传图片文件,示例:

1
2
3
{
"image": "data:image/jpeg;base64,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"
}

参数:

  • imageUrl(二选一): 图片地址
  • image(二选一): 图片文件

访问效果

访问的URL是: https://classify-pictures.api.randallanjie.com?imageUrl=https://cataas.com/cat

API代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
import { Ai } from './vendor/@cloudflare/ai';

async function runAiModel(ai, blob) {
try {
const inputs = {
image: [...new Uint8Array(blob)]
};
const response = await ai.run('@cf/microsoft/resnet-50', inputs);
return { inputs: { image: [] }, response };
} catch (error) {
console.error('AI model run failed:', error.message);
return { error: error.message };
}
}

export default {
async fetch(request, env) {
try {
let blob;

if (request.method === 'POST') {
// For POST requests, get the image data or image URL from the request body
const requestBody = await request.json();
if (requestBody.image) {
// If the request body contains image data
blob = new Uint8Array(atob(requestBody.image.split(",")[1])).buffer;
} else if (requestBody.imageUrl) {
// If the request body contains an image URL
const imageResponse = await fetch(requestBody.imageUrl);
if (!imageResponse.ok) {
throw new Error('Failed to fetch image');
}
blob = await imageResponse.arrayBuffer();
} else {
throw new Error('Missing image or imageUrl in request body');
}
} else if (request.method === 'GET') {
// For GET requests, get the image URL from the URL parameters, then download the image
const url = new URL(request.url);
const imageUrl = url.searchParams.get('imageUrl');
if (!imageUrl) {
throw new Error('Missing imageUrl in query parameters');
}
const imageResponse = await fetch(imageUrl);
if (!imageResponse.ok) {
throw new Error('Failed to fetch image');
}
blob = await imageResponse.arrayBuffer();
} else {
// If the request method is neither POST nor GET, return an error response
return new Response('Invalid request method', { status: 405 });
}

const ai = new Ai(env.AI);
const result = await runAiModel(ai, blob);
return new Response(JSON.stringify(result), {
status: 200,
headers: { 'Content-Type': 'application/json' }
});
} catch (error) {
return new Response(error.message, { status: 500 });
}
}
};

利用Cloudflare Workers搭建的一些API
https://blog.zhuanjie.ltd/2023/10/05/api-with-cloudflare/
作者
转接
发布于
2023年10月5日
许可协议