<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[前端蜗牛君]]></title><description><![CDATA[每天坚持一点点的进步，就像蜗牛一样，虽然慢，但一直向前]]></description><link>https://blog.csdn.net/zqd_java</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; zqd_java]]></copyright><item><title><![CDATA[Codex 接入飞书]]></title><link>https://blog.csdn.net/zqd_java/article/details/163498246</link><guid>https://blog.csdn.net/zqd_java/article/details/163498246</guid><author>zqd_java</author><pubDate>Wed, 05 Aug 2026 18:15:00 +0800</pubDate><description><![CDATA[飞书Codex全栈集成指南（150字摘要） 本文提供Windows/macOS双平台完整教程，分两种模式实现飞书与Codex的深度集成： Codex访问飞书：通过CLI工具实现日程读取、文档处理等操作链（Codex→lark-cli→飞书API） 飞书内嵌机器人：搭建Node.js服务实现飞书消息→Codex→自动回复的智能对话 教程包含： 环境准备（Node.js安装与验证） 飞书CLI工具安装配置 日历权限申请与测试 数据读写操作演示 后续扩展建议（文档/表格/任务等） 采用分步式教学，每个操作均提供W]]></description><category></category></item><item><title><![CDATA[frp内网穿透搭建指南]]></title><link>https://blog.csdn.net/zqd_java/article/details/163168255</link><guid>https://blog.csdn.net/zqd_java/article/details/163168255</guid><author>zqd_java</author><pubDate>Fri, 24 Jul 2026 22:00:00 +0800</pubDate><description><![CDATA[无需敲大量命令！本篇手把手带你从零搭建FRP内网穿透，使用开源图形化客户端 frpc-desktop，可视化配置、一键启动、稳定不掉线，适合开发调试、远程桌面、NAS访问、内网项目外网映射，小白也能5分钟上手！
标签：#内网穿透 #FRP #frpc-desktop #服务器 #远程访问 #开发调试 #网络技术
开源项目引用
FRP 官方开源：https://github.com/fatedier/frp
FRP 桌面图形客户端：https://github.com/luckjiawei/frpc-desk]]></description><category></category></item><item><title><![CDATA[前端实现 SSE（Server-Sent Events）的三种方式]]></title><link>https://blog.csdn.net/zqd_java/article/details/162450932</link><guid>https://blog.csdn.net/zqd_java/article/details/162450932</guid><author>zqd_java</author><pubDate>Tue, 30 Jun 2026 15:16:13 +0800</pubDate><description><![CDATA[本文介绍了前端实现SSE（Server-Sent Events）实时接收服务器推送数据的三种主流方式，并按照推荐程度排序： 最佳方案：微软开源的@microsoft/fetch-event-source库，支持POST请求、自定义Headers、自动重连和完善异常处理，特别适合AI聊天等复杂场景。 次选方案：原生fetch+ReadableStream组合，支持POST和自定义Headers但需手动解析数据流，适合无依赖要求的轻量级应用。 特定场景方案：浏览器原生EventSource API，仅支持GET]]></description><category></category></item><item><title><![CDATA[GUI Agent纯视觉 GUI 操作模型]]></title><link>https://blog.csdn.net/zqd_java/article/details/160226599</link><guid>https://blog.csdn.net/zqd_java/article/details/160226599</guid><author>zqd_java</author><pubDate>Thu, 16 Apr 2026 20:34:37 +0800</pubDate><description><![CDATA[Mano-P 1.0 是一款突破性的纯视觉GUI操作模型，在本地端侧设备即可实现自动化操作。其核心优势包括：1）纯视觉交互不依赖协议，可跨平台操控各类应用；2）支持本地部署，Mac设备即可流畅运行；3）自适应界面变化，大幅降低维护成本。该模型在OSWorld等权威测试中表现优异，支持从开发构建到视频处理等多种场景。用户可通过CLI命令行或Skiko库快速集成，实现&quot;所见即所得&quot;的智能自动化操作。]]></description><category></category></item><item><title><![CDATA[get请求传递数组]]></title><link>https://blog.csdn.net/zqd_java/article/details/146557340</link><guid>https://blog.csdn.net/zqd_java/article/details/146557340</guid><author>zqd_java</author><pubDate>Thu, 27 Mar 2025 19:00:00 +0800</pubDate><description><![CDATA[需要注意的是，如果请求参数中带有中括号[]，[]在url中属于功能性字符，前端需要使用decodeURIComponent()函数转义，否则会出现400 Bad Request错误。传递数据最好使用post请求放到body中，如果非要使用get请求传递数组，可以通过下面方式。axios中有一个专门对数据进行序列化的配置属性paramsSerializer。在axios请求拦截器中对参数进行序列化配置。]]></description><category></category></item><item><title><![CDATA[vue代码中使用debugger不生效或无法跳转源码终极解决方案]]></title><link>https://blog.csdn.net/zqd_java/article/details/141055039</link><guid>https://blog.csdn.net/zqd_java/article/details/141055039</guid><author>zqd_java</author><pubDate>Fri, 09 Aug 2024 18:00:00 +0800</pubDate><description><![CDATA[debugger不生效，或者debugger生效，但进入的不是源码，终极解决]]></description><category></category></item><item><title><![CDATA[js函数参数的默认值，参数为对象]]></title><link>https://blog.csdn.net/zqd_java/article/details/139781592</link><guid>https://blog.csdn.net/zqd_java/article/details/139781592</guid><author>zqd_java</author><pubDate>Tue, 18 Jun 2024 19:47:34 +0800</pubDate><description><![CDATA[比如，上面最后一个函数，定义了 3 个参数，其中有一个参数c指定了默认值，因此length属性等于3减去1，最后得到2。上面两种写法都对函数的参数设定了默认值，区别是写法一函数参数的默认值是空对象，但是设置了对象解构赋值的默认值；上面代码中，函数fetch没有第二个参数时，函数参数的默认值就会生效，然后才是解构赋值的默认值生效，变量method才会取到默认值GET。上面代码中，有默认值的参数都不是尾参数。上面代码中，x参数对应undefined，结果触发了默认值，y参数等于null，就没有触发默认值。]]></description><category></category></item><item><title><![CDATA[JS中对象解构时(嵌套子对象)指定默认值]]></title><link>https://blog.csdn.net/zqd_java/article/details/139328333</link><guid>https://blog.csdn.net/zqd_java/article/details/139328333</guid><author>zqd_java</author><pubDate>Thu, 30 May 2024 19:20:41 +0800</pubDate><description><![CDATA[当被解构字段缺失时:此时可在解构时使用。]]></description><category></category></item><item><title><![CDATA[tailwindcss 最简单的使用方式]]></title><link>https://blog.csdn.net/zqd_java/article/details/139327039</link><guid>https://blog.csdn.net/zqd_java/article/details/139327039</guid><author>zqd_java</author><pubDate>Thu, 30 May 2024 19:20:10 +0800</pubDate><description><![CDATA[从头开始使用Tailwind CSS的最简单和最快的方法是使用Tailwind CLI工具。]]></description><category></category></item><item><title><![CDATA[pnpm原理：软连接、硬连接]]></title><link>https://blog.csdn.net/zqd_java/article/details/135685490</link><guid>https://blog.csdn.net/zqd_java/article/details/135685490</guid><author>zqd_java</author><pubDate>Fri, 26 Apr 2024 15:58:08 +0800</pubDate><description><![CDATA[在操作系统中，文件实际上是一个指针，只不过它指向的不是内存地址，而是一个外部存储地址（这里的外部存储可以是硬盘、U盘、甚至是网络）：硬链接是一个实实在在的文件，node不对其做任何特殊处理，也无法区别对待，实际上，node根本无从知晓该文件是不是一个硬链接。硬链接的概念来自于 Unix 操作系统，它是指将一个文件A指针复制到另一个文件B指针中，文件B就是文件A的硬链接。当我们删除文件时，删除的实际上是指针，因此，无论删除多么大的文件，速度都非常快。硬链接的数量没有限制，可以为同一个文件产生多个硬链接。]]></description><category></category></item><item><title><![CDATA[浏览器存储cookie、webStorage、IndexedDB]]></title><link>https://blog.csdn.net/zqd_java/article/details/138132205</link><guid>https://blog.csdn.net/zqd_java/article/details/138132205</guid><author>zqd_java</author><pubDate>Tue, 23 Apr 2024 16:48:12 +0800</pubDate><description><![CDATA[MDN官网是这样解释Indexed DB的：IndexedDB 是一种底层 API，用于在客户端存储大量的结构化数据（也包括文件/二进制大型对象（blobs））。该 API 使用索引实现对数据的高性能搜索。虽然 Web Storage 在存储较少量的数据很有用，但对于存储更大量的结构化数据来说力不从心。而 IndexedDB 提供了这种场景的解决方案。]]></description><category></category></item><item><title><![CDATA[webpack中mode、NODE_ENV、DefinePlugin、cross-env的使用]]></title><link>https://blog.csdn.net/zqd_java/article/details/138130828</link><guid>https://blog.csdn.net/zqd_java/article/details/138130828</guid><author>zqd_java</author><pubDate>Tue, 23 Apr 2024 16:20:11 +0800</pubDate><description><![CDATA[mode是设置执行模式，webpack4会自动将mode的值通过设置为全局变量，业务代码中可以使用process.env.NODE_ENV读取值。NODE_ENV是设置Node环境变量，在webpack.config.js、webpack.dev.js等文件中通过读取值。cross-env是用来解决跨环境的。用来设置全局变量，在业务代码中通过读取值。]]></description><category></category></item><item><title><![CDATA[URL的绝对路径/相对路]]></title><link>https://blog.csdn.net/zqd_java/article/details/137923495</link><guid>https://blog.csdn.net/zqd_java/article/details/137923495</guid><author>zqd_java</author><pubDate>Thu, 18 Apr 2024 21:15:00 +0800</pubDate><description><![CDATA[浏览器会拿到当前页面的地址，以及当前页面的请求方法，重新发一次请求，同时抛弃当前页面。浏览器要想发起请求,必须是一个完整的url地址.属性值，然后把表单中的数据组织到请求体中，发出。浏览器会拿到a元素的href地址，并发出一个。浏览器会自动解析URL，并发出一个。和当前页面的path密切相关。单页面应用使用的是绝对路径.浏览器会拿到对应的地址，发出。的请求，同时抛弃当前页面。和当前页面的path无关。请求，同时抛弃当前页面。请求，同时抛弃当前页面。，并注明了获取服务的。浏览器会获取按钮所在的。]]></description><category></category></item><item><title><![CDATA[选择做程序猿的你后悔过吗]]></title><link>https://blog.csdn.net/zqd_java/article/details/137929789</link><guid>https://blog.csdn.net/zqd_java/article/details/137929789</guid><author>zqd_java</author><pubDate>Thu, 18 Apr 2024 18:09:58 +0800</pubDate><description><![CDATA[我是一名程序员，还在上大学的时候我就是了，或许当我报考《计算机科学与技术》这门专业的时候就是了。原因也很简单：和其他大多数行业相比，软件行业的薪资水平和福利待遇还是高一些的（注意我说的是大多数，如果你有不同见解，以你为准）！是的，就这么简单，对比之下，软件行业似乎是个还不错的选择！不然，也不会有那么多人花重金培训，往这个行业里挤。但，如果你没有其他选择，程序猿这个行业也可一试！如果你有更好的选择，那请一定不要选择程序猿！周末还坐在电脑前加班的时候后悔过！但我最终的答案是：不后悔！加班到凌晨的时候后悔过！]]></description><category></category></item><item><title><![CDATA[Macbook m1安装docker详细教程]]></title><link>https://blog.csdn.net/zqd_java/article/details/136879029</link><guid>https://blog.csdn.net/zqd_java/article/details/136879029</guid><author>zqd_java</author><pubDate>Wed, 20 Mar 2024 20:42:45 +0800</pubDate><description><![CDATA[修改完成之后，点击 Apply & restart 按钮，Docker 就会重启并应用配置的镜像地址了。将Docker拖到Applications中。接下来就开始愉快的使用Docker吧！如果没有账号点注册，有账号直接登录。点击Settings。]]></description><category></category></item><item><title><![CDATA[如何实现跨标签页通讯]]></title><link>https://blog.csdn.net/zqd_java/article/details/136881498</link><guid>https://blog.csdn.net/zqd_java/article/details/136881498</guid><author>zqd_java</author><pubDate>Wed, 20 Mar 2024 20:42:28 +0800</pubDate><description><![CDATA[同一浏览器，可以打开多个标签页，跨标签页通讯就是，一个标签页能够发消息给另一标签页。]]></description><category></category></item><item><title><![CDATA[vscode使用remote-ssh免密连接服务器]]></title><link>https://blog.csdn.net/zqd_java/article/details/136662223</link><guid>https://blog.csdn.net/zqd_java/article/details/136662223</guid><author>zqd_java</author><pubDate>Tue, 12 Mar 2024 21:31:26 +0800</pubDate><description><![CDATA[你还在使用XShellHyperFinalShell等等SSH客户端软件吗，作为前端的我们，一直在用的功能强大的开发工具vscode，早已实现SSH连接功能（借助官方提供的插件）。而且更加好用，可以直接打开服务器上的文件，直接在vscode中修改、保存。按照下面的步骤安装配置，去发现新大陆吧！]]></description><category></category></item><item><title><![CDATA[在vue2中使用tailwindcss（完整教程）]]></title><link>https://blog.csdn.net/zqd_java/article/details/136568490</link><guid>https://blog.csdn.net/zqd_java/article/details/136568490</guid><author>zqd_java</author><pubDate>Fri, 08 Mar 2024 21:06:53 +0800</pubDate><description><![CDATA[如果你看过好多教程之后，还是报错，无法使用tailwindcss，我希望本教程可以让你成功上岸。]]></description><category></category></item><item><title><![CDATA[git学习教程-前端这一篇文章就够了]]></title><link>https://blog.csdn.net/zqd_java/article/details/136351670</link><guid>https://blog.csdn.net/zqd_java/article/details/136351670</guid><author>zqd_java</author><pubDate>Wed, 28 Feb 2024 21:45:00 +0800</pubDate><description><![CDATA[当你学习 Git 时，可能会被其庞大的命令集和各种概念所吓到。但实际上，Git 并不要求死记硬背每一个命令，更重要的是理解其工作流程和使用场景。这篇文章的目的就是帮助你简化 Git 的学习过程，让你发现 Git 其实并不需要刻意去背，只需要真正理解它，就能轻松掌握。现在，就让我们一起踏上探索 Git 世界的旅程吧！]]></description><category></category></item><item><title><![CDATA[cookie封装，使用更方便]]></title><link>https://blog.csdn.net/zqd_java/article/details/136173274</link><guid>https://blog.csdn.net/zqd_java/article/details/136173274</guid><author>zqd_java</author><pubDate>Mon, 19 Feb 2024 20:45:00 +0800</pubDate><description><![CDATA[当提到"cookie封装"，通常是指在开发中对浏览器cookie的处理进行封装和管理，以简化代码和提高可维护性。在Web开发中，cookie是一种用于存储少量数据的小文件，存储在用户的浏览器中。它们被广泛用于跟踪用户会话，记录用户偏好，进行用户身份验证等。]]></description><category></category></item></channel></rss>