当前位置:首页>网站源码>阿里一行JS代码,让网页自己长出「AI操作员」:你打字它动手,2.2万人黑客社区疯狂围观!

阿里一行JS代码,让网页自己长出「AI操作员」:你打字它动手,2.2万人黑客社区疯狂围观!

  • 2026-08-10 20:50:35
阿里一行JS代码,让网页自己长出「AI操作员」:你打字它动手,2.2万人黑客社区疯狂围观!

想象一下,你打开公司那套用了八年的老旧后台系统。密密麻麻的表单,十几个下拉框,找一个字段能找到眼花。

你不想点了。你打了一行字:「帮我提交一张50块钱的午餐报销,昨天的。」

回车。

页面自己动了起来。光标自己跳到姓名框,自己填公司字段,自己选套餐档位,自己点了保存。全程你的手没碰键盘之外的任何东西。

这既非科幻片桥段,也非哪个大厂关起门来内测的黑科技。它是阿里巴巴上个月悄悄开源、这周突然在全球开发者圈子里疯传的项目,PageAgent

一行代码,GitHub两万多人给它点星

事情要从一段极短的代码说起。

<script src="https://cdn.jsdelivr.net/npm/page-agent@1.11.0/dist/iife/page-agent.demo.js" crossorigin="true"></script>

把这行代码贴进任意网页的 <script> 标签,或者用 npm 装个包,几行配置,一个网站,就此拥有了自己的「AI操作员」。用户不再需要学着用你的系统,只需要说人话。

阿里巴巴的官方 Demo 页上,这句话被印得很大:

"One line of code, turns your website into an AI-native app. Users give natural language commands, AI handles the rest."

「一行代码,让你的网站变成AI原生应用。用户用自然语言下命令,剩下的交给AI。」

▲ alibaba.github.io/page-agent 官方Demo首页,输入框里打字就能测试,右上角标着当前 star 数。

这套东西真正在中文互联网炸开,得倒回6月22日这一天。X(推特)博主 @gaoqian2580 发了一条帖子:

「阿里开源 Page-Agent 爆火!GitHub 狂揽 18.7K star!用自然语言就能指挥它点击按钮、填写表单、完成复杂操作。无需浏览器模拟、无截图、无OCR,纯前端 Agent 独立上阵,丝滑好用!」

这条帖子拿下516个赞、883次收藏,评论区涌进一堆同行追问「这靠谱吗」「生产环境能用吗」。

▲ @gaoqian2580 在6月22日发布的爆款推文,配图为当时18.7k stars的GitHub仓库主页。

十天后,7月2日,AI垂直媒体 Marktechpost 发了一篇深度分析文章,标题开门见山:《Meet Alibaba's Page Agent: A JavaScript In-Page GUI Agent That Controls Web Interfaces With Natural Language Through the DOM》。这篇文章又在X上被官方账号转发,配上实录视频,进一步把话题带向全球开发者。到7月3日,GitHub星标已经冲到22.3k,而且还在涨。

▲ 截至发稿前,alibaba/page-agent 仓库星标22.3k,34位贡献者,最新版本v1.11.0。

反过来了:以前是外面的机器人在敲键盘,现在是网页自己会动手

要理解PageAgent为什么让开发者这么兴奋,得先明白一件事:过去所有能「替你操作网页」的工具,走的都是同一条路,从外面控制。

Selenium、Playwright、Puppeteer,这些经典的浏览器自动化工具,都要单独起一个进程,拉起一个(通常是无头的)浏览器,靠WebDriver或者Chrome DevTools协议远程操控。更前沿一点的browser-use之类的智能体,干脆把网页截图丢给多模态大模型,让AI「看图猜哪里能点」。

这条路径注定又贵又慢。截图要传输,多模态模型token费用高,识别还可能猜错位置。更麻烦的是,你的登录状态、会话信息,这些外部机器人统统没有,得单独想办法处理认证。

Marktechpost的文章这样形容这种反差:

"Most browser automation runs from the outside... Alibaba's Page Agent takes the opposite path. The agent lives inside the webpage as plain JavaScript. It reads the live DOM as text and acts as the real user. No headless browser, no screenshots, no multi-modal model."

「大多数浏览器自动化都是从外部运行的……阿里的Page Agent走了相反的路径。这个智能体就活在网页内部,是一段纯粹的JavaScript。它把实时DOM读成文字,像真实用户一样操作。不需要无头浏览器,不需要截图,不需要多模态模型。」

这句「活在网页里」是理解整件事的钥匙。PageAgent算不上一个外挂的机器人,它本身就是网页的一部分,用户已经登录了,它照样能用这份会话;页面结构变了,它能实时重新扫描;不用另起后端,也不用重写任何东西。

Marktechpost还画了张对比表,把PageAgent和三类老牌选手摆在一起:

方案
运行位置
怎么读页面
上手成本
最适合
PageAgent
网页内部(客户端JS)
脱水后的文本DOM
一行script标签或npm
自己产品内的Copilot
Selenium/Playwright/Puppeteer
外部独立进程
WebDriver/CDP驱动
需要独立驱动和运行环境
端到端测试脚本
browser-use
外部独立进程
DOM+可选视觉
Python+浏览器
跨站自主智能体
WebMCP
服务端工具
结构化函数调用
依赖标准落地
原生Agent工具接入

这里的差别落在使用场景上:PageAgent专攻你自己能改代码的产品;外部驱动的工具,依然是爬取跨站数据、伺候被锁死系统的主力,各管一段。

「脱水」黑箱:网页怎么变成AI能看懂的文字

那PageAgent到底怎么让一个普通文本模型精准点中按钮的?答案藏在一个词里,DOM dehydration(DOM脱水)

一个现代网页的DOM树,动辄几千个节点。要是把原始HTML整个丢给大模型,又慢又贵,模型还容易迷失在一堆无意义的标签属性里。

PageAgent的做法是:指令一到,先扫描整个DOM,把所有「可交互元素」,按钮、输入框、链接,一个个挑出来,给每个元素分配一个编号,再标上它的角色和文字说明。冗余的标签属性被剥离干净,最后生成一份叫FlatDomTree的纯文本地图。模型读的是这份精简文本,跳过像素,也绕开原始HTML。

拿到模型返回的带编号动作指令后,真正干活的是另一个模块,PageController。文档里给出的核心调用是这样的:

await this.pageController.updateTree()
await this.pageController.clickElement(index)
await this.pageController.inputText(index, text)
await this.pageController.scroll({ down: true, numPages: 1 })

它模拟的是真实用户事件,真的点击、真的输入、真的滚动,绝不会绕开界面偷偷改数据。整个项目拆成monorepo里的几个包:@page-agent/core管核心决策逻辑,page-agent是带UI面板的入口,@page-agent/page-controller专门负责DOM提取和索引,还带一个叫SimulatorMask的可视化反馈层,能让你亲眼看到AI「点了哪里」。

这套设计换来的好处摆在明面上:强文本模型就够用了,不需要为多模态识别的高昂账单买单;延迟更低,因为不用截图往返;精度也更高,靠的是结构化信息,而非视觉「猜」出来的坐标。

官方文档的功能页上,四个特性被摆在最显眼的位置,「Smart DOM Analysis(智能DOM分析)」、「Secure & Controllable(安全可控)」、「Zero Backend(零后端)」、「Accessible Intelligence(无障碍智能)」。

▲ 官方文档Overview页,把Smart DOM Analysis、Secure & Controllable、Zero Backend、Accessible Intelligence四个特性放在首屏。

三个月前那场吵架:安全问题,作者亲自下场接招

技术亮点讲完了,该说说争议了。

PageAgent算不上这两天才冒出来的新项目,它三个月前就在Hacker News发过Show HN帖子,拿到147个赞、76条评论,作者本人simon_luv_pho(在阿里工作,X账号@simonluvramen)几乎是逐条回复的架势,把这个项目的技术辩论摆到了台面上。

他在发帖里说:

"I built this because I believe there's a massive design space for deploying general agents natively inside the web apps we already use, rather than treating the web merely as a dumb target for isolated bots."

「我做这个项目,是因为我相信,把通用智能体原生部署进我们已经在用的网页应用里,这里面有巨大的设计空间,而不该只是把网页当成孤立机器人操作的一个笨目标。」

评论区最尖锐的问题,几乎都指向同一个方向:一段能替用户点鼠标、填表单的JS脚本,挂在网页里,安全边界在哪?

有网友当场质疑客户端智能体的权限风险。作者的回应也很坦率,大意是:PageAgent在HTML/DOM层面运行,权限和任何其它第三方脚本完全一样,这种「安全令牌」担忧,本来就适用于每一段被你放进页面的第三方代码,并非PageAgent独有的新风险。

还有人提到企业站点常见的CSP(内容安全策略),常常挡掉内联脚本,导致集成失败;也有人指出DOM脱水这一步的还原精度,才是真正容易出边界问题的地方,序列化越保真,AI判断越准。

▲ Hacker News Show HN原帖,147分76条评论,作者本人在评论区逐条回应安全、CSP与扩展权限的质疑。

面对这些拷问,PageAgent交出的答案落在层层设防上,而非一句简单的「相信AI」:操作白名单限制智能体能做什么;敏感字段(比如密码)在传给模型之前先打码,模型压根看不到明文;关键操作执行前,弹窗等用户手动批准;开发者还可以往里注入自定义规则,让智能体按你的业务逻辑走。

这套护栏思路,恰恰是这个项目最值得记一笔的地方,没有指望模型自己足够聪明、足够谨慎。再强的大模型也会看错字段、点错按钮,真正兜底的,是这些写死的规则,不靠一句「模型应该不会犯错」的信念。

从中国刷屏到全球开发者圈:「几乎没人注意到,但这太疯狂了」

7月初这一波关注,不只在中文圈。

美国开发者@DivyanshT91162在X上写道:

"CHINA just dropped what could be the future of web apps... This isn't another flashy demo. It's production-ready."

「中国刚刚发布了可能是网页应用未来的东西……这并非又一个花哨的演示,它是真正能用于生产环境的东西。」

SaaS领域的独立开发者@karlarboledas的说法更犀利:

"this is insane. alibaba just dropped an open-source tool called PageAgent, and almost no one in the SaaS world is paying attention yet... if you're a founder manually coding AI features or copilots from scratch, this completely changes the game."

「这太疯狂了。阿里刚刚开源了一个叫PageAgent的工具,而SaaS世界里几乎没人注意到……如果你是那种手动给产品逐个开发AI功能或Copilot的创始人,这东西彻底改变了游戏规则。」

▲ SaaS独立开发者@karlarboledas的推文,列出零摩擦集成、语音控制、多页支持等亮点,附带官方演示界面截图。

这类反应背后,是同一个判断在被反复验证:对大量做后台系统、ERP、CRM,却没资源重写前端、更没精力搭一套完整智能体服务的团队来说,PageAgent把「给产品加个AI操作员」这件事,从一个工程项目压缩成了一次配置。客服机器人不再只会说「请点击设置按钮」,它能替用户把操作一步做完;做了十几年没人愿意碰的老旧内部工具,不改一行原有代码,也能加上一条自然语言指令栏;配合语音API,原本操作复杂的网页,对视障用户或者操作不便的用户,也第一次变得可以「说句话就能用」。

当然,清醒的声音也在。质疑者提到最多的,是客户端把API密钥明晃晃暴露出来的风险,生产环境这么干,等于把钥匙挂在自家大门外面,官方文档也明确建议用后端代理转发,别让密钥进浏览器裸奔。复杂到会在每次状态变化时把整棵DOM树推倒重建的动态页面(比如重度使用React的应用),脱水的稳定性也还需要观察。这东西目前擅长的,是结构清晰、语义良好的页面,遇上大量canvas绘制或者故意设置的视觉验证码,它一样束手无策,系统提示会主动跳过,把操作交还给真人。

AI从「说」到「做」,又往前跨了一大步

把这些线索拼在一起看,会发现PageAgent真正撬动的,不只是一个开源库的走红。

过去两年,大模型能聊、能写、能画,但「让AI真正替你操作一个具体的软件界面」,始终隔着一层,要么得自己搭一套笨重的浏览器自动化管道,要么得为视觉模型的账单发愁。PageAgent把这层隔阂,压缩成了一行<script>标签。

这也在给前端开发者提一个新要求:未来设计一个界面,可能不只要考虑人怎么看懂它,还要考虑AI智能体能不能顺利读懂它的结构,语义清晰的HTML、稳定的元素标识,会变成一种新的「基础设施素养」。

当然,这场变革里没有魔法。护栏能挡住大部分意外,却挡不住所有;文本模型再精准,遇到语义混乱的页面照样会判断失误;客户端的每一段代码,都和这个项目本身一样,权限和风险摆在明面上,需要开发者自己负责任地用。

但至少,那道曾经横在「AI能聊」和「AI能干」之间的墙,已经被撬开了一道口子。22.3k颗星标,还在继续往上涨。

最新文章

随机文章

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