《go-zero云笺密钥录》

《go-zero云笺密钥录》

目录

​编辑

​编辑

一、前言

二、正文

 1.编写api接口

 1.1 fac-contact.api

1.2 fca.api

 2. 编写Handler函数

3. 编写Logic函数 

3.1 base64Captcha.NewDriverDigit()

3.2  base64Captcha.NewCaptcha ()

3.3 Generate()

3.4 Set()

 3.5 具体实现

三、结语


一、前言

        本文将为大家带来go-zero框架下如何实现一个能够随机生成随机数字验证码的api接口

二、正文

 1.编写api接口

        在go-zero框架下要实现一个接口,我们需要先定义一个api文件,在这个文件中声明我们要实现接口的函数名,参数和返回值,如果参数和返回值是自定义类型的的话,我们还需要将具体的类型定义写在api文件中。笔者将生成随机图形验证码的函数,参数和返回值声明在fac-contact.api中,所有的接口api都聚合在一个总的api文件,即fca.api,后续的话就只需要根据这一个fca.api就可以自主生成所有接口后续的handle和logic文件

 1.1 fac-contact.api

@server ( prefix: /api/v1 timeout: 15s group: contact ) service fca-api { @doc( summary: "获取图形验证码" description: "生成并返回图形验证码" ) @handler WebsiteCaptchaHandler // TODO: set handler name and delete this comment get /contact/captcha returns(ContactCaptchaResp) } 

1.2 fca.api

import "fca-contact.api" type ContactCaptchaResp { Data ContactCaptchaRespData `json:"data,omitempty"` } type ContactCaptchaRespData { CaptchaId string `json:"captchaId"` //与验证码对应的ID ImageBase64 string `json:"imageBase64"` //生成的图形验证码 } 
        这里的CaptchaId是为了后续将用户输入的图形验证码与ID对应的图形验证码进行比对,如果相等即说明用户输入正确,相反则说明错误 

在写完api文件后,我们执行下述代码,go-zero框架就可以自主帮我们生成后面的Handle函数和Logic函

goctl api go -api ./fca.api -dir .
注: goctl(Go Control Tool)是 go-zero 框架的代码生成工具,用于自动化生成项目代码、配置文件及部署脚本,主要功能包括:

● 项目脚手架生成:快速创建 API 服务、RPC 服务等基础代码结构。
● 代码生成:根据定义文件(如 .api、.proto)生成模型层、逻辑层、路由层代码3。
● 配置管理:生成与框架兼容的配置文件(如 yaml 格式)。
● 部署支持:生成 Dockerfile 或 Kubernetes 部署模板。

生成API服务

goctl api go -api user.api -dir .
● user.api 文件定义了接口路径、请求/响应结构等。
● 生成代码包含路由、处理函数及中间件框架

Read more

旧电脑秒变 AI 员工:OpenClaw 本地部署教程(含环境配置 + 插件开发 + 常见坑)

旧电脑秒变 AI 员工:OpenClaw 本地部署教程(含环境配置 + 插件开发 + 常见坑)

前言 本文基于最新OpenClaw版本编写,适配电脑低配置场景(最低2vCPU+2GiB内存+40GiB SSD),兼容Windows 10/11(优先WSL2)、Ubuntu 20.04+系统,全程纯操作指令,覆盖环境配置、本地部署、插件开发、高频坑排查。核心解决部署卡顿、国内网络适配、插件开发无思路、报错无法排查四大痛点,全程适配国内网络(国内镜像源)、国内大模型(通义千问、阿里云百炼等),无需海外代理,可稳定运行实现自动化办公(文件处理、IM对接、任务调度等)。 一、前置准备(适配优化) 1.1 硬件要求(最低适配) * CPU:Intel i3 4代+/AMD Ryzen 3 2000+(支持虚拟化,

By Ne0inhk
基于飞算JavaAI的学生成绩综合统计分析系统

基于飞算JavaAI的学生成绩综合统计分析系统

第一章:项目概述与背景 1.1 项目背景与意义 在教育信息化飞速发展的今天,学生成绩管理已成为学校教学管理的核心环节。传统的学生成绩管理多依赖于手工操作或基础的信息管理系统,存在数据处理效率低、统计分析功能薄弱、数据可视化缺失等问题。随着大数据技术的发展,教育领域对数据驱动的决策支持需求日益增长,一个能够提供综合统计分析功能的学生成绩管理系统显得尤为重要。 学生成绩综合统计分析系统旨在通过对学生成绩数据的深度挖掘和多维度分析,为教师、学生和管理者提供全面的数据支持。系统不仅能够实现基础的成绩录入和查询,更重要的是能够识别学习趋势、发现教学问题、预测学业表现,从而为个性化教学和精准教育干预提供科学依据。 1.2 飞算JavaAI平台介绍 飞算JavaAI是一款智能代码生成平台,采用人工智能技术辅助Java项目开发。 飞算JavaAI的核心功能模块,紧密围绕“高效、智能、安全”的Java开发全流程展开:左侧聚焦智能交互,包含三大实用工具——编程智能体可自动调用工具执行编程任务(如自动生成基础代码、辅助调试),智能问答提供实时技术答疑(快速解决开发中的疑难问题),Java Cha

By Ne0inhk
Flutter 三方库 langchain_google 的鸿蒙化适配指南 - 链接 Gemini 智慧中枢、LangChain AI 实战、鸿蒙级智能应用专家

Flutter 三方库 langchain_google 的鸿蒙化适配指南 - 链接 Gemini 智慧中枢、LangChain AI 实战、鸿蒙级智能应用专家

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 langchain_google 的鸿蒙化适配指南 - 链接 Gemini 智慧中枢、LangChain AI 实战、鸿蒙级智能应用专家 在鸿蒙跨平台应用迈向“智能化”的今天,接入生成式 AI(AIGC)已不再是加分项,而是必选项。如果你想在鸿蒙端利用 Google Gemini 的强大推理能力打造智能助手、自动化翻译或垂直领域 RAG 系统。今天我们要深度解析的 langchain_google——一个通过 LangChain 标准协议封装的 Google AI 适配器,正是帮你构建“大模型大脑”的核心插件。 前言 langchain_google 是 LangChain.

By Ne0inhk
AI与单片机之:STM32上运行AI大模型的四种方案!(含案例,建议收藏)

AI与单片机之:STM32上运行AI大模型的四种方案!(含案例,建议收藏)

前几天小编写了2篇文章 “为什么AI会改变单片机的未来?” 单片机上如何运行AI?单片机如何“学会思考”之TinyML崛起!(含案例,建议收藏), 引起了非常多的留言、关注和加群讨论。但是,仍然有读者朋友给小编留言,能否整理一些关于比较常用芯片比如STM32实用AI大模型的案例。为了满足粉丝朋友的诉求,小编整理了“在STM32单片机上运行AI大模型的”真实案例。 从粉丝的一个问题引出本文的思考:AI 模型能跑在 STM32 上吗? 一:先说结论 先说结论:不仅能跑,还一共有四种方案。 方案一:STM32官方提供的 STM32Cube.AI(X-CUBE-AI) 其实原理是我们把在 PC 上训练好的神经网络自动转换成可在 MCU 上运行的 C 库;然后在自己的软件/代码工程中调用已经编译产生的C库。 方案二:直接用 TensorFlow Lite Micro(TFLM)+ CMSIS-NN 在 STM32

By Ne0inhk