当前位置: 首页 > news >正文

Cursor小程序实战系列三: 前后端对接保姆级拆解

一、先理解下什么是前后端,为什么叫对接?

图片1(5)

 

 

二、谁来定义API接口

1、传统的模式

先后端出接口定义,前端人员按照接口定义自己搭建模拟数据,这样的好处是

前端,后端都能同时开发,互不影响

2、cursor模式

图片1(6)

 

三、生成API接口文档

1、最好的方式,在rules中定义接口变化同时更新接口文档

 

** 入参要求

• header中必须设置 auth, 值为当前登录后保存的token值

• 请求的参数使用json 格式, 就算是参数为空,也需要使用 {} 来代替

** http请求

   请求方式默认是post,除非有明确要求

** 返参

• 后端统一返回的参数为json对象,格式如下

{

"error": 0,

 "body": object,

 "message": ''

 

   }

 error =0, 表示没有任何异常

 error = 500, 表示系统异常,需要弹出系统异常的错误

 error = 401,表示需要登录

 error 其它值,表示业务异常,直接弹出 message内容

 body 是一个对象

 ** 设计一个通用函数来处理后端API返回值,所有的API文件都是用这个通用函数

 ** 当接口发生修改或者新增时,将接口信息按照如下格式:

 接口名称

• 接口核心功能描述,不超过200字

• 接口地址: /print/assembly/{id}/export-pdf

• 方法: GET

• 需要登录: 是

• 请求参数: 无

• 响应类型: blob

• 返回值:{}

同步更新到  @接口文档.md

2、也可以全局扫描的方式生成接口文档

 

我现在需要一份接口文档,你需要扫描每个页面,页面在 @pages @components   ,按照以下流程来获取页面中的接口信息

• 从页面中获取调用的接口,并找到接口调用的真实地址,如果没有你可以自己生成真实的接口地址

• 从页面中获取调用接口的入参和返参,并放到下面的格式中返回

• 出参和入参的格式定义需要符合接口的统一规则 api.mdc

• 接口需要标出是否需要登陆才能访问

最后生成md文档保存起来

格式如下:

接口名称

• 接口核心功能描述,不超过200字

• 接口地址: /print/assembly/{id}/export-pdf

• 方法: GET

• 需要登录: 是

• 请求参数: 无

• 响应类型: blob

• 返回值:{}

记得把 接口规则文档放到上下文中

四、需求文档

需求文档的目的是 让后端明白系统是干什么用的,不用拘泥于需求文档是什么格式。

你可以自己写,或者让AI生成。

根据  核心功能和

• 核心功能1

• 核心功能2

• 核心功能3

参考  @API_DOCUMENTATION_NEW.md 接口定义,总结一个标准的需求文档给我

五、生成后端项目

1、先建空的文件夹,配置好rules

rules使用网上开源的

[该类型的内容暂不支持下载]

2、将接口文档和需求文档拷贝到空文件中

去掉需求文档中非功能描述的其他内容。

使用thinking 模式

请仔细阅读 @接口文档.md , @需求文档.md , 遵守 @flask.mdc 规则,完成项目的初始化。请注意以下事项:

• @接口文档.md 里面定义的所有接口必须全部实现,接口名称和出入参格式保持一致

• 数据库使用mysql

3、生成建表语句

按照rules生成的项目会有初始化数据库的方法

或者用以下提示词生成建表语句

 

@models 根据文件生成对应的mysql 建表语句

4、项目这就完成了?

远远还没结束。

你需要完成页面中每个功能对应的后端流程的调试和修改

六、下期:使用cursor完成后端逻辑编写的几个常用技巧

http://www.rkmt.cn/news/3766.html

相关文章:

  • 课前问题思考2
  • Cursor小程序实战四:如何让AI写好后端代码
  • USACO08 OPEN Roads Around the Farm S (递归)
  • JavaScript生成随机数的方法
  • LiveOS 的制作简介
  • 目标检测 | 基于Weiler–Atherton算法的IoU求解
  • 对比Java学习Go——函数、集合和OOP
  • 【WRF-VPRM 预处理器】HEG 安装(服务器)-MRT专业的工具替代
  • redis实现缓存2-解决缓存穿透,缓存击穿
  • 单克隆抗体人源化:从鼠源缺陷到全人源突破,3 大阶段破解临床应用难题
  • C 语言实现动态数组、链表、栈与队列
  • git reset
  • Brute It -TryHackMe
  • 题解:P12336 第三心脏
  • Spring篇知识点(1)
  • uniapp原生插件 TCP Socket 利用文档
  • 【PyQt5】实现输入延迟响应:3秒无输入后自动读取内容
  • Windows 自带的SSH中配置X11
  • 完整教程:技术小白如何快速的了解opentenbase?--把握四大特色
  • 9.13日模考总结
  • 高斯消元
  • uni-app iOS 性能监控全流程 多器具协作的实战优化指南
  • 十八、CPU的控制流:正常控制流和异常控制流
  • 使用 C# 设置 Excel 单元格格式 - 教程
  • 【ARM Cache 及 MMU 系列文章 6.1 -- Cache maintenance 指令及相关寄存器有哪些?】
  • 每日Java并发面试系列(5):基础篇(线程池的核心原理是什么、线程池大小设置为多少更合适、线程池哪几种类型?ThreadLocal为什么会导致内存泄漏?) - 实践
  • 模仿玩家习惯的简单AI系统:GoCap
  • 浅谈马拉车
  • 十七、异常和中断响应过程的时序图
  • 直播平台搭建,浏览器中的事件循环与Node中的事件循环 - 云豹科技