乐于分享
好东西不私藏

使用OpenClaw + 阿里千问Code Plan搭建企业微信AI助手,提升企业 AI 使用水平!

使用OpenClaw + 阿里千问Code Plan搭建企业微信AI助手,提升企业 AI 使用水平!

本方案通过 OpenClaw企业微信自建应用 与 阿里云千问 Code Plan 在云服务器上搭建企业微信智能助手,让员工在企业微信内即可与 AI 对话,提升企业 AI 使用水平

文档记录如何完成以下内容:

  • 安装并配置 OpenClaw 网关(含阿里千问 Code Plan 模型配置)
  • 接入企业微信自建应用,接收员工发来的消息并主动回复
  • 通过 OpenClaw 调用千问大模型(阿里云百炼 / Code Plan 接口)完成问答

目标效果:员工在企业微信自建应用里发消息 → 云服务器收到消息 → 调用 OpenClaw + 千问 → 再通过企业微信把答案发回,实现「企业微信 + AI」一体化使用体验。


一、整体架构与数据流

  • 终端用户:企业微信中的员工,在“自建应用”的聊天窗口里发送文本消息。
  • 企业微信服务器:把消息通过 HTTP 回调推送到我们的云服务器。
  • 云服务器 Node.js 中转服务
    • 监听 http://<云服务器IP>:3000/wework/webhook
    • 解密企业微信推送的加密消息(Encrypt 字段)
    • 从 XML 中解析出文本内容
    • 把文本发到本机的 OpenClaw 网关
  • OpenClaw 网关
    • 监听本地端口 127.0.0.1:18789(见 openclaw.json 中 gateway.port
    • 统一调度后端大模型(默认使用 dashscope/qwen3.5-plus,走阿里千问 Code Plan 接口 https://coding.dashscope.aliyuncs.com/v1
  • 企业微信开放平台接口
    • 云服务器拿 access_token
    • 调 message/send 主动把 AI 的回复发回给刚才的员工

消息链路可以概括为:

企业微信用户 → 企业微信服务器 → 云服务器 Node 中转 → OpenClaw + 千问 Code Plan → 云服务器主动调用企业微信 API → 企业微信用户


二、云服务器环境准备

  • 操作系统:Linux(例如 CentOS / Ubuntu,本文示例使用一台公网 IP 为 47.238.98.71 的服务器)
  • Node.js:建议 **16+**(示例环境为 Node 22)
  • 已开通企业微信(可以是未认证企业,但接口权限会有一定限制)

1. 基础安装

# 更新系统包sudo yum update -y      # 或 apt update && apt upgrade -y# 安装 Node.js(以 nvm 或发行版自带为准)# 这里不展开,保持你的现有 Node 环境即可# 建目录mkdir -p /wwwcd /www

三、安装并配置 OpenClaw

1. 安装 OpenClaw

参考官方文档安装 OpenClaw(略),安装完成后,你会拥有一个类似 openclaw 的可执行程序,以及一个默认的配置文件 openclaw.json

在本项目中,我们把配置文件放在云服务器的:

/root/.openclaw/openclaw.json      # 仅示例路径

本仓库中的 openclaw.json 为参考配置,与当前实现对齐,主要包含:

  • gateway:端口 18789bind: "loopback"(仅本机 127.0.0.1:18789),Token 认证,并启用 responses 接口供中转服务调用。
  • agents.defaults:默认使用 dashscope/qwen3.5-plus,workspace 可设为 /root/.openclaw/workspace
  • sessiondmScope: "per-channel-peer" 等按需保留。
  • models:使用阿里千问 Code Plan 网关 https://coding.dashscope.aliyuncs.com/v1,通过 env.vars.DASHSCOPE_API_KEY 注入密钥。

网关与模型配置示例(节选):

"gateway": {"port"18789,"mode""local","bind""loopback","auth": {"mode""token","token""<YOUR_OPENCLAW_GATEWAY_TOKEN>"  },"http": {"endpoints": {"responses": { "enabled"true }    }  }},"agents": {"defaults": {"model": { "primary""dashscope/qwen3.5-plus" },"workspace""/root/.openclaw/workspace"  }},"models": {"mode""merge","providers": {"dashscope": {"baseUrl""https://coding.dashscope.aliyuncs.com/v1","apiKey""${DASHSCOPE_API_KEY}","api""openai-completions","models": [        {"id""qwen3.5-plus","name""Qwen3.5-Plus","reasoning"false,"input": ["text"],"contextWindow"128000,"maxTokens"8192        }      ]    }  }},"env": {"vars": {"DASHSCOPE_API_KEY""<YOUR_CODE_PLAN_API_KEY>"  }}
  • baseUrl 使用 https://coding.dashscope.aliyuncs.com/v1 即走阿里千问 Code Plan 接口。
  • 可在 models.providers.dashscope.models 中增加其他 Code Plan 模型(如 qwen3-max-*qwen3-coder-* 等),id 与官方一致即可。

安全建议:不要将真实 Token / API Key 提交到仓库,使用环境变量或密钥管理服务。

3. 启动 OpenClaw 网关

确保已设置千问 Code Plan 的 API Key(与 openclaw.json 中 env.vars.DASHSCOPE_API_KEY 或环境变量一致),然后启动网关:

export DASHSCOPE_API_KEY="<YOUR_CODE_PLAN_API_KEY>"openclaw gateway

启动后,本机可通过 http://127.0.0.1:18789/v1/responses 调用 OpenClaw,供 wework-verify.js 转发企业微信消息并获取千问回复。


四、Node.js 中转服务设计与实现

中转服务的主要职责:

  1. 校验并解密企业微信的回调消息。
  2. 将文本内容转发给 OpenClaw。
  3. 在后台异步调用 OpenClaw,拿到返回文本。
  4. 对长回复按企业微信 2048 字节文本长度限制 分段,多条依次发送,并在每条前加类似 (1/3) 的序号提示。
  5. 同时满足企业微信“5 秒内必须响应回调”的约束,在模型推理期间先发一条“正在处理您的消息,请稍候…”的加载提示消息。

1. 关键配置项

在 wework-verify.js 顶部配置区需填写(与 openclaw.json 及企业微信后台一致):

// 企业微信(自建应用 - 接收消息 + 应用 Secret)const WEWORK_TOKEN            = '<YOUR_WEWORK_TOKEN>';const WEWORK_ENCODING_AES_KEY = '<YOUR_ENCODING_AES_KEY>';  // 43 位,与后台完全一致const WEWORK_CORP_ID          = '<YOUR_CORP_ID>';const WEWORK_AGENT_ID         = '<YOUR_AGENT_ID>';const WEWORK_SECRET           = '<YOUR_APP_SECRET>';// OpenClaw 网关(与 openclaw.json 中 gateway 一致)const OPENCLAW_HOST  = '127.0.0.1';const OPENCLAW_PORT  = 18789;const OPENCLAW_TOKEN = '<YOUR_OPENCLAW_GATEWAY_TOKEN>';// 长消息分段(企业微信单条文本 ≤2048 字节,多段时加「(1/3)」前缀)const WEWORK_TEXT_MAX_BYTES = 2048;const WEWORK_SEGMENT_PREFIX_RESERVE_BYTES = 20;

POST 消息会先校验 msg_signature 再解密;解密失败时日志会提示检查 EncodingAESKey 是否与企业管理后台「接收消息」配置一致。

2. 企业微信回调处理逻辑

企业微信消息分为两类 HTTP 请求:

  • GET:首次配置“接收消息服务器”时,用于 URL 验证。
  • POST:真正的消息推送。

代码中通过一个 HTTP 服务器统一处理:

const http  = require('http');const https = require('https');const server = http.createServer(async (req, res) => {  res.setHeader('Connection''close');// 日志:记录所有进入的 HTTP 请求,便于排查const ip = req.socket && req.socket.remoteAddress ? req.socket.remoteAddress : 'unknown';console.log(`[HTTP] ${req.method}${req.url} from ${ip}`);// 1)GET /wework/webhook:URL 验证// 2)POST /wework/webhook:接收加密消息// 3)GET /health:健康检查});server.listen(3000'0.0.0.0', () => {console.log('企业微信 + OpenClaw 中转服务已启动');});

2.1 GET:URL 验证

企业微信在后台保存“接收消息服务器配置”时会发送 GET 请求,参数包括:

  • msg_signature
  • timestamp
  • nonce
  • echostr(加密的随机串)

服务器需要:

  1. 校验签名是否正确。
  2. 使用 AES 解密 echostr 还原明文。
  3. 把明文返回给企业微信。

这一步成功后,后台才会认为回调 URL 可用,后续消息才会推送。

2.2 POST:接收消息并异步处理

收到企业微信消息的 XML 后:

  1. 立即返回 success(防止超过 5 秒被重试)。
  2. 在后台异步:
    • 解析 XML 中的 Encrypt 字段;
    • 解密得到内层 XML,解析出 MsgTypeFromUserNameContent 等;
    • 对文本消息调用 OpenClaw,获取回复;
    • 先给用户发送一条“正在处理您的消息,请稍候…”的加载提示,让用户立刻看到反馈;
    • 对长回复按 UTF-8 字节数切分为多段(每段预留前缀空间,保证整体不超过 2048 字节),按顺序依次发送给 FromUserName,并在每条前加 (当前序号/总条数)

这样既满足了超时限制,又保证了模型推理的完整性和长消息的可读性。


五、OpenClaw 调用与回复解析

中转服务通过 askOpenClaw 调用本地 OpenClaw 网关(/v1/responses),请求体为 model: "agent:defaults"input: userMsg。回复从 OpenClaw 返回的 output 中解析第一段文本(兼容 item.content[].textitem.textitem.content 等格式),超时时间为 90 秒,与当前 wework-verify.js 实现一致。


六、企业微信主动发送消息(HTTPS 与文本长度注意事项)

在实践过程中,最容易踩的一个坑是:企业微信开放平台所有接口必须使用 HTTPS

如果错误地用 HTTP 请求 qyapi.weixin.qq.com,企业微信会返回一个 HTML 重定向页面,代码里用 JSON.parse 解析时就会出现:

SyntaxError: Unexpected token '<', "<html>..." is not valid JSON

正确做法是在 Node.js 中使用 https 模块:

另外,企业微信应用消息中的文本内容有长度限制

  • 文本 content 字段最长 不超过 2048 字节,超出部分会被企业微信截断。
  • 本项目在服务端侧按 UTF-8 字节数 事先将长回复切分成多段,每段长度控制在 2048 字节以内,并预留了前缀空间,用于在每条消息前加上 (1/3)(2/3) 这样的序号提示。
  • 多段消息之间会加入一个很短的发送间隔,尽量确保用户在聊天窗口里看到的顺序与逻辑顺序一致。
const https = require('https');functiongetAccessToken({// ...const req = https.get({hostname'qyapi.weixin.qq.com',path`/cgi-bin/gettoken?corpid=${encodeURIComponent(WEWORK_CORP_ID)}&corpsecret=${encodeURIComponent(WEWORK_SECRET)}`  }, (res) => {// 解析 JSON  });}functionsendWeworkText(toUser, text{return getAccessToken().then((token) => {returnnewPromise((resolve, reject) => {const body = JSON.stringify({touser: toUser,msgtype'text',agentidparseInt(WEWORK_AGENT_ID, 10),text: { content: text }      });const req = https.request({hostname'qyapi.weixin.qq.com',path`/cgi-bin/message/send?access_token=${encodeURIComponent(token)}`,method'POST',headers: {'Content-Type''application/json','Content-Length': Buffer.byteLength(body)        }      }, (res) => {// 解析返回 JSON,检查 errcode/errmsg      });// ...    });  });}

七、企业微信 IP 白名单与典型错误 60020

当中转服务成功拿到 access_token,但在调用 message/send 时报错:

发送应用消息失败: 60020 not allow to access from your ip, from ip: 47.xxx.xxx.xxx

这说明:你这台云服务器的公网 IP 没有被加入企业微信开放平台的“可信 IP 列表 / IP 白名单”

解决步骤:

  1. 使用管理员账号登录企业微信管理后台。

  2. 进入:应用管理 → 自建应用 → 开发管理 / 接口权限 / IP 白名单(名称可能略有差异)

  3. 在“可信 IP / IP 白名单”中添加你的云服务器公网 IP,例如:

    47.238.98.71
  4. 保存之后,再次发送消息即可正常调用。

如果企业未认证,可能对可配置 IP 数量或部分接口能力有一定限制,需结合官方文档具体评估。


八、运行与调试方式

1. 前台调试

cd /wwwnode wework-verify.js

保持终端不关,直接观察输出日志。发送企业微信消息时,可以看到每一条请求的处理过程,便于快速定位问题。

2. 后台运行 + 日志文件

生产环境可以使用 nohup 简单托管:

cd /wwwnohup node wework-verify.js > wework.log 2>&1 &tail -f wework.log

如果报错 EADDRINUSE(地址已被占用),说明端口 3000 已被其他进程占用,可以用:

ss -tlnp | grep 3000kill <占用该端口的PID>

九、总结与可扩展方向

本方案在一台云服务器上完成:

  • OpenClaw 网关:按 openclaw.json 部署,对接阿里千问 Code Plancoding.dashscope.aliyuncs.com),默认使用 qwen3.5-plus
  • 企业微信智能助手:通过 wework-verify.js 实现自建应用回调、消息解密、先发「正在处理…」再异步调 OpenClaw、长回复按 2048 字节分段并带「(1/3)」序号、POST 验签与解密失败提示,有效提升企业 AI 使用水平
  • 运维与排错:HTTPS 调用企业微信 API、IP 白名单(错误码 60020)、EncodingAESKey 与 Token 校验等已在文档与代码中体现。

可扩展方向:

  • 接入企业内部知识库、工单、CRM 等,让 AI 具备企业上下文;
  • 多轮对话、会话记忆、用户身份与权限;
  • 更多通道(Web、H5、小程序)统一经 OpenClaw 调用千问等模型。

企业微信 + OpenClaw + 阿里千问 Code Plan” 架构适合作为企业内统一 AI 助手入口,便于后续扩展与运维。

openclaw企微定制咨询:(800元搞掂)
IT技术交流群:

软件接单交流群:

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-03 13:27:29 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/497518.html
  2. 运行时间 : 0.145504s [ 吞吐率:6.87req/s ] 内存消耗:4,688.70kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=b6f6b4e3617195f62d61262b41d2c2e8
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.80 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000934s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001560s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000738s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000878s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001379s ]
  6. SELECT * FROM `set` [ RunTime:0.000589s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001580s ]
  8. SELECT * FROM `article` WHERE `id` = 497518 LIMIT 1 [ RunTime:0.016205s ]
  9. UPDATE `article` SET `lasttime` = 1775194049 WHERE `id` = 497518 [ RunTime:0.017866s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.009336s ]
  11. SELECT * FROM `article` WHERE `id` < 497518 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001363s ]
  12. SELECT * FROM `article` WHERE `id` > 497518 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001070s ]
  13. SELECT * FROM `article` WHERE `id` < 497518 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001762s ]
  14. SELECT * FROM `article` WHERE `id` < 497518 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001641s ]
  15. SELECT * FROM `article` WHERE `id` < 497518 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002602s ]
0.147098s