<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>小程序开发专题 on PlumePHP</title><link>https://plumephp.com/posts/miniprogram/</link><description>Recent content in 小程序开发专题 on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Tue, 22 Sep 2026 12:15:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/posts/miniprogram/index.xml" rel="self" type="application/rss+xml"/><item><title>小程序全栈项目实战：从零构建电商应用</title><link>https://plumephp.com/miniprogram-fullstack-project/</link><pubDate>Tue, 22 Sep 2026 12:15:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-fullstack-project/</guid><description>&lt;p&gt;理论知识只有在实战中才能真正内化。本文将以一个完整的电商小程序项目为例，从需求分析、技术选型、架构设计、前后端开发到最终部署，完整呈现全栈小程序项目的构建过程。这个项目综合运用了前文讨论的组件化架构、状态管理、云开发和性能优化等技术，为读者提供一个可参考、可复用的工程化实践样本。&lt;/p&gt;</description></item><item><title>小程序自动化测试与 CI/CD 实践</title><link>https://plumephp.com/miniprogram-testing-ci/</link><pubDate>Tue, 22 Sep 2026 12:00:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-testing-ci/</guid><description>&lt;p&gt;软件质量保障离不开系统化的测试与持续交付。微信小程序作为运行在微信客户端内的应用，其测试与部署流程既有与传统 Web/App 共通的测试方法论，也有因为平台封闭性带来的特殊挑战。本文将从小程序特有的测试工具链出发，系统讲解单元测试、端到端自动化测试、微信官方 CI 服务以及与第三方 CI/CD 平台的集成方案，帮助团队建立起可靠的质量门禁与交付流水线。&lt;/p&gt;</description></item><item><title>小程序安全与合规实践</title><link>https://plumephp.com/miniprogram-security-compliance/</link><pubDate>Tue, 22 Sep 2026 11:45:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-security-compliance/</guid><description>&lt;p&gt;随着小程序承载的业务场景日益复杂，涉及用户信息、支付交易和隐私数据的处理越来越多，安全与合规已从可选项变为必选项。微信小程序平台对安全和隐私的要求日益严格，违反相关规范可能导致审核被拒、功能受限甚至下架处理。本文将从代码安全、数据保护、隐私合规和审核策略四个维度，系统阐述小程序安全建设的核心要点。&lt;/p&gt;</description></item><item><title>小程序性能优化全景指南</title><link>https://plumephp.com/miniprogram-performance-optimization/</link><pubDate>Tue, 22 Sep 2026 11:30:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-performance-optimization/</guid><description>&lt;p&gt;小程序性能直接影响用户体验和留存率。微信官方数据显示，启动耗时每增加 1 秒，用户流失率会显著上升。本文将从包体积控制、渲染层优化、启动加速、网络请求优化和内存管理五个维度，构建一套完整的小程序性能优化体系，并配合实战案例说明每项优化的具体实施方法与效果量化。&lt;/p&gt;</description></item><item><title>小程序云开发实战</title><link>https://plumephp.com/miniprogram-cloud-development/</link><pubDate>Tue, 22 Sep 2026 11:00:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-cloud-development/</guid><description>&lt;p&gt;微信小程序云开发是微信官方推出的一站式后端云服务，它将云函数、云数据库、云存储和云调用四大能力整合在一起，使前端开发者无需搭建传统后端服务器即可构建完整的小程序应用。云开发采用 Serverless 架构，开发者只需编写业务逻辑代码，由微信平台自动完成服务器运维、弹性扩缩容和负载均衡。本文将从云开发的整体架构入手，逐一深入各核心模块，并提供完整的实战案例。&lt;/p&gt;</description></item><item><title>多端小程序深度对比</title><link>https://plumephp.com/miniprogram-cross-platform-comparison/</link><pubDate>Tue, 22 Sep 2026 10:45:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-cross-platform-comparison/</guid><description>&lt;p&gt;国内移动互联网生态中，小程序已不再是微信小程序的专属概念。支付宝、字节跳动（抖音/今日头条）、百度和华为快应用等平台相继推出各自的轻应用框架，形成了多端并存的局面。对于希望覆盖更广泛用户群体的开发者和企业而言，理解各平台小程序的技术差异与适配策略至关重要。本文将从架构设计、API 差异、开发工具和商业生态等维度，深度对比五大平台的小程序方案。&lt;/p&gt;</description></item><item><title>小程序状态管理实战</title><link>https://plumephp.com/miniprogram-state-management/</link><pubDate>Tue, 22 Sep 2026 10:30:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-state-management/</guid><description>&lt;p&gt;随着小程序页面数量增加和业务逻辑复杂化，页面之间共享状态、同步数据的需求愈发迫切。微信小程序的原生架构并未内置类似 Vuex 或 Redux 的全局状态管理方案，开发者需要自行设计或使用第三方库来实现跨页面的状态共享。本文将从全局状态的核心设计出发，逐步深入到 MobX、Redux 等状态管理库在小程序中的适配实践，并提供完整的性能优化策略。&lt;/p&gt;</description></item><item><title>小程序组件化架构设计</title><link>https://plumephp.com/miniprogram-component-architecture/</link><pubDate>Tue, 22 Sep 2026 10:15:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-component-architecture/</guid><description>&lt;p&gt;随着小程序业务逻辑的日益复杂，单一页面内堆砌全部 UI 与交互逻辑的开发模式已难以维护。组件化架构成为构建中大型小程序项目的必然选择。本文将从小程序自定义组件的核心机制出发，逐步深入到 Behavior 复用、Slot 插槽、组件间通信，以及组件库的工程化建设，提供一套完整的小程序组件化设计方法论。&lt;/p&gt;</description></item><item><title>微信小程序原生开发完全指南</title><link>https://plumephp.com/miniprogram-native-development-guide/</link><pubDate>Tue, 22 Sep 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/miniprogram-native-development-guide/</guid><description>&lt;p&gt;微信小程序原生开发是所有跨端框架（Taro、Uni-app、WePY）的底层基础。无论是使用框架开发还是原生开发，深入理解微信小程序的核心技术栈——WXML、WXSS、JavaScript 和 JSON 配置——都是构建高质量小程序的必经之路。本文将系统性地剖析原生小程序开发的完整技术体系，从视图层到逻辑层，从基础配置到高级组件化，帮助开发者建立扎实的原生开发能力。&lt;/p&gt;</description></item><item><title>数字无极图像识别实现：基于特征向量与相似度匹配的闭集识别方案</title><link>https://plumephp.com/diginf-animal-image-recognition-implementation/</link><pubDate>Wed, 10 Dec 2025 10:00:00 +0800</pubDate><guid>https://plumephp.com/diginf-animal-image-recognition-implementation/</guid><description>&lt;p&gt;先不管具体语言栈，我先帮你把&amp;quot;怎么做一个可用的动物识别 API&amp;quot;这件事拆开，从整体方案到识别算法到 API 设计到数据结构到一些坑点，讲一遍。你后面如果确定用 Go 或 Node 或 Python，我再帮你落地到代码。&lt;/p&gt;</description></item><item><title>数字无极小程序问答设计</title><link>https://plumephp.com/shu-zi-wuji-qa-design/</link><pubDate>Mon, 24 Nov 2025 13:18:45 +0800</pubDate><guid>https://plumephp.com/shu-zi-wuji-qa-design/</guid><description>&lt;h2 id="1-需求"&gt;1. 需求&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;一个展览 = 一个或多个问答流程（这里先按一个流程来设计，可扩展多流程）。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;每个流程有多道题，题型包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;单选题 &lt;code&gt;single_choice&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;多选题 &lt;code&gt;multiple_choice&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;判断题 &lt;code&gt;true_false&lt;/code&gt;（本质是特殊单选）&lt;/li&gt;
&lt;li&gt;填空题 / 简单文本题 &lt;code&gt;text&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;答案形式要支持：&lt;/p&gt;</description></item><item><title>数字无极小程序接口设计</title><link>https://plumephp.com/shu-zi-wuji-api-design/</link><pubDate>Sun, 06 Jul 2025 13:18:45 +0800</pubDate><guid>https://plumephp.com/shu-zi-wuji-api-design/</guid><description>&lt;h2 id="小程序后端接口文档"&gt;小程序后端接口文档&lt;/h2&gt;
&lt;h3 id="公共说明"&gt;公共说明&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;所有接口统一前缀：&lt;code&gt;/api/v1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;所有需要身份验证的接口需携带 &lt;code&gt;Authorization: Bearer &amp;lt;token&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;接口统一响应格式：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;code&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;message&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;success&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;data&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="err"&gt;...&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt; 为 0 表示成功，其他值表示失败&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message&lt;/code&gt; 为错误信息&lt;/li&gt;
&lt;li&gt;&lt;code&gt;data&lt;/code&gt; 为接口返回的数据&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="1-用户模块"&gt;1. 用户模块&lt;/h2&gt;
&lt;h3 id="11-微信登录"&gt;1.1 微信登录&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;接口名称&lt;/strong&gt;：微信登录&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;方法&lt;/strong&gt;：POST&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;路径&lt;/strong&gt;：&lt;code&gt;/auth/login&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;描述&lt;/strong&gt;：通过微信 code 获取用户信息，生成登录 token&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;请求参数&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;code&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;微信临时登录凭证（wx.login 获取）&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;响应参数&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;token&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;登录令牌&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;user_info&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;openid&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;微信用户唯一标识&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;nickname&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;张三&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;avatar&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;https://...&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;phone&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;138xxxx0000&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="12-获取手机号"&gt;1.2 获取手机号&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;方法&lt;/strong&gt;：POST&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;路径&lt;/strong&gt;：&lt;code&gt;/user/phone&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;描述&lt;/strong&gt;：解密微信手机号或校验手机号验证码&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;请求参数（方式一：微信加密数据）&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;encryptedData&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;iv&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;请求参数（方式二：验证码校验）&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;phone&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;138xxxxxxx&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;code&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;1234&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;响应参数&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;phone&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;138xxxxxxx&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="13-获取验证码"&gt;1.3 获取验证码&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;方法&lt;/strong&gt;：POST&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;路径&lt;/strong&gt;：&lt;code&gt;/auth/send_code&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;描述&lt;/strong&gt;：向手机号发送短信验证码&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;请求参数&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;phone&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;138xxxxxxx&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;响应参数&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;message&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;验证码已发送&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="14-验证验证码"&gt;1.4 验证验证码&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;方法&lt;/strong&gt;：POST&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;路径&lt;/strong&gt;：&lt;code&gt;/user/verify_code&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;描述&lt;/strong&gt;：验证用户验证码是否正确&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;请求参数&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;phone&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;138xxxxxxx&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;code&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;1234&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;响应参数&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;message&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;验证码验证通过&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="15-获取用户信息"&gt;1.5 获取用户信息&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;方法&lt;/strong&gt;：GET&lt;/p&gt;</description></item><item><title>数字无极小程序功能规划</title><link>https://plumephp.com/shu-zi-xiao-cheng-neng/</link><pubDate>Sun, 06 Jul 2025 13:18:34 +0800</pubDate><guid>https://plumephp.com/shu-zi-xiao-cheng-neng/</guid><description>&lt;p&gt;本小程序为用户提供丰富的展览浏览功能，支持展览收藏、点赞、分享与预约参观和大屏互动。用户可通过微信登录和手机号验证快速登录，在线购票并支持二维码核销，方便高效地完成整个观展流程。&lt;/p&gt;</description></item><item><title>微信小程序开发框架优势</title><link>https://plumephp.com/xiao-cheng-kai-fa-kuang-jia-you-shi/</link><pubDate>Thu, 01 Aug 2024 20:55:29 +0800</pubDate><guid>https://plumephp.com/xiao-cheng-kai-fa-kuang-jia-you-shi/</guid><description>&lt;p&gt;使用微信小程序开发框架如Taro或Uni-app，相比于微信原生开发，它们提供了一些额外的优势，但同时也存在一些需要注意的地方。&lt;/p&gt;
&lt;h3 id="优势"&gt;优势：&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;跨平台开发&lt;/strong&gt;：Taro和Uni-app都支持跨平台开发，可以同时生成微信小程序、H5、React Native等不同平台的应用 。&lt;/p&gt;</description></item><item><title>微信小程序项目框架结构推荐</title><link>https://plumephp.com/xiao-cheng-mu-kuang-jia-gou/</link><pubDate>Wed, 31 Jul 2024 21:11:45 +0800</pubDate><guid>https://plumephp.com/xiao-cheng-mu-kuang-jia-gou/</guid><description>&lt;p&gt;在构建一个复杂的微信小程序大项目时，项目结构的合理性对于项目的可维护性、可扩展性和开发效率至关重要。以下是一个推荐的项目框架结构，它考虑了模块化、组件化以及清晰的职责分离：&lt;/p&gt;</description></item></channel></rss>