https://www.openaidoc.com.cn/api-reference/making-requests

  1. curl 一个简答请求,需要自行修改API-url和API-key,以及模型,role看情况修改,content是问题内容
curl -H "Content-Type: application/json" \
     -H "Authorization: Bearer $API-key" \
     -d '{
 "model": "gemini-2.0-flash",
 "messages": [{"role": "user", "content": "linux.do是一个什么样的社区"}],
 "temperature": 0.7
 }' https://api.comalot.me/v1/chat/completions

返回内容

{"id":"chatcmpl-b5643398164b454b9cac93d89fa16005","model":"gemini-2.0-flash","object":"chat.completion","created":1741230923,"choices":[{"index":0,"message":{"role":"assistant","content":"linux.do 是一个主要面向中文用户的 Linux 和开源技术社区。 它以讨论、分享经验和提供帮助为主要目的。\n\n以下是 linux.do 社区的一些关键特点:\n\n*   **中文社区:** 主要面向中文使用者,使用中文进行交流。\n*   **Linux 和开源技术:**  讨论的主题围绕 Linux 操作系统、开源软件、技术和相关话题。\n*   **技术交流:**  用户可以在论坛上提问、回答问题、分享经验、发布教程和资源。\n*   **学习和帮助:**  社区成员互相帮助解决技术问题,分享学习资源,共同提高技能。\n*   **活跃的社群:**  linux.do 拥有一个活跃的用户群体,积极参与讨论和分享。\n*   **各种主题版块:**  通常会有不同的版块,涵盖 Linux 发行版、服务器管理、编程、桌面环境、软件应用等方面。\n*   **资源分享:**  用户可以分享有用的软件、工具、脚本、文档等资源。\n\n总的来说,linux.do 是一个中文 Linux 爱好者和专业人士交流学习、互助互利的平台。 如果你对 Linux 和开源技术感兴趣,并且希望与中文用户交流,linux.do 是一个不错的选择。\n\n你可以访问他们的网站 [https://linux.do/](https://linux.do/) 来了解更多信息。\n"},"finish_reason":"stop"}],"usage":{"prompt_tokens":6,"completion_tokens":292,"total_tokens":298,"prompt_tokens_details":{"cached_tokens_details":{}},"completion_tokens_details":{}}}
  1. python 请求内容,需要自行修改API-url和sk-YOUR_API_KEY,以及模型,role看情况修改,content是问题内容
nano request.py
添加以下内容:
# ############
import requests
import json

url = 'https://closeai.im/v1/chat/completions'
headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer sk-YOUR_API_KEY'
}
data = {
    "model": "gemini-2.0-flash",
    "messages": [{"role": "user", "content": "linux.do是一个什么样的社区"}],
    "temperature": 0.7
}

try:
    response = requests.post(url, headers=headers, data=json.dumps(data))
    response.raise_for_status()
    print(response.json())
except requests.exceptions.RequestException as e:
    print(f"Error: {e}")
# ##############
sudo chmod +x request.py
python3 request.py
  1. node.js 安装node.js https://homulilly.com/post/install-nodejs-on-debian-12.html
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
sudo apt-get update
sudo apt-get install nodejs -y
node.js -v

发送API请求,需要自行修改API-url和sk-YOUR_API_KEY,以及模型,role看情况修改,content是问题内容。

mkdir bbb.gemini_nodejs
cd bbb.gemini_nodejs
touch api-request.js
npm init -y
nano api-request.js
添加以下内容
# ############
const https = require('https'); // 或者使用 'http' 如果 API 是 HTTP 而非 HTTPS
const fs = require('fs');

const apiKey = '$sk-YOUR_API_KEY'; // 替换成你的 API 密钥
const apiUrl = 'https://closeai.im/v1/chat/completions'; // 替换成你的 API URL

const postData = JSON.stringify({  // 将数据转换为 JSON 字符串
    "model": "gemini-2.0-flash",
    "messages": [{"role": "user", "content": "linux.do是一个什么样的社区"}],
    "temperature": 0.7
});

const options = {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
        'Authorization': `Bearer ${apiKey}`
    }
};

const req = https.request(apiUrl, options, (res) => {
    let data = '';

    res.on('data', (chunk) => {
        data += chunk;
    });

    res.on('end', () => {
        try {
            const jsonData = JSON.parse(data); // 将 JSON 字符串解析为 JavaScript 对象
            console.log(jsonData);

            // 将 JSON 数据写入文件
            fs.writeFile('api-response.json', JSON.stringify(jsonData, null, 2), (err) => {
                if (err) {
                    console.error('写入文件出错:', err);
                } else {
                    console.log('API 响应已保存到 api-response.json');
                }
            });
        } catch (error) {
            console.error('解析 JSON 出错:', error);
            console.error('原始响应数据:', data); // 打印原始响应数据以便调试
        }
    });
}).on('error', (err) => {
    console.error('请求出错:', err);
});

req.write(postData); // 发送 POST 数据
req.end(); // 结束请求
# ############
sudo apt install jq
node api-request.js
jq -r '.choices[0].message.content' api-response.json