2026-01-08 17:40:59 +08:00
2026-01-08 17:40:59 +08:00
2026-01-08 17:39:02 +08:00
2026-01-08 17:40:59 +08:00
2026-01-08 17:40:59 +08:00
2026-01-08 17:40:59 +08:00
2026-01-08 17:40:59 +08:00

Suanming Web Gateway

统一的算命网页入口:后端调用 suanming API 获取原始命理数据,再调用 DeepSeek LLM 输出自然语言解读,前端只需请求 /api/fortune

功能概览

  • POST /api/fortune:校验参数 → 调用 suanming → 调用 DeepSeek → 返回 ai_text + raw_suanming
  • Express 静态站点单页表单包含示例填充、请求状态、AI 文本展示、原始 JSON 展开、免责声明等。
  • .env 控制 suanming、DeepSeek、端口与超时示例参见 .env.example

文件结构

web/
├── public/            # 静态前端资源index.html / styles.css / app.js
├── server.js          # Express 网关及 API 实现
├── package.json       # 项目依赖
└── .env.example       # 环境变量模板

快速开始

  1. 安装依赖

    cd web
    npm install
    
  2. 配置环境变量

    cp .env.example .env
    # 修改 .env填入真实的 suanming 地址、访问令牌以及 DeepSeek Key
    
  3. 启动服务

    npm run dev
    # 浏览器访问 http://localhost:4173
    

API 说明

POST /api/fortune
Content-Type: application/json

请求示例:

{
  "type": "bazi",
  "name": "张三",
  "birth_date": "1990-01-01",
  "birth_time": "12:00",
  "gender": "male",
  "is_lunar": false,
  "question": "想了解近期事业与财运",
  "extra_options": { "focus": "career" }
}

返回示例:

{
  "success": true,
  "data": {
    "ai_text": "DeepSeek 的自然语言解读",
    "raw_suanming": { "...": "原始 suanming JSON" },
    "meta": {
      "type": "bazi",
      "model": "deepseek-chat",
      "elapsed_ms": 2143,
      "warnings": []
    }
  }
}

自定义

  • DeepSeek 调用通过 openai SDK 完成,.env 中的 DEEPSEEK_API_URL 只需设置到根域名(默认 https://api.deepseek.com)。
  • 若你的 suanming API 启用了认证,把登录后拿到的 Bearer token 填入 SUANMING_API_TOKEN,网关会自动加到 Authorization 头。
  • 若暂未配置 DeepSeek Key会返回提示并保留 raw_suanming,方便调试。
  • 如需拓展 namefortune 等类型,可在 server.jsbuildSuanmingRequest 中补充对应 endpoint/payload。
  • 前端使用原生 JS便于在任何环境下部署若后续需要组件化框架可直接复用当前 API。

免责声明

页面底部及 DeepSeek Prompt 均包含“仅供娱乐参考”的提示,请在生产部署时继续保留。

Description
No description provided
Readme 85 KiB
v1.0.0 Latest
2026-01-08 18:02:44 +08:00
Languages
JavaScript 60.7%
CSS 22.7%
HTML 16.6%