Gpt微信小程序搭建的前后端流程 - 前端小程序部分-2.确定交互所需的后端API(二)

news/2024/5/20 6:35:22 标签: gpt, 微信小程序, golang, 微服务, openai

Gpt微信小程序搭建的前后端流程 - 前端小程序部分-2.确定交互所需的后端API(二)


参考微信小程序-小柠AI智能聊天,可自行先体验。

小程序二维码


根据上一节的小程序静态页面设计,需要从后端获取数据的主要4个点:

  1. 登录流程;
  2. 获取今日已提问次数;
  3. 获取聊天记录;
  4. 发起聊天和响应。

这样就是确定至少需要4个后端API,通过返回的数据做渲染显示。


登录流程

其中登录流程就是参考小程序官方图。

  1. 小程序先通过wx.login()获取code
  2. 请求后端登录API
  3. 后端通过appid, appsecret, code请求 https://api.weixin.qq.com/sns/jscode2session 获取用户唯一id的openid
  4. 通过openid封装token返回前端-》前端保存token,之后请求API带上,校验用。

在这里插入图片描述

登录这里会有个坑,就是在wx.login中使用异步请求后端API时候,如果这个登录逻辑放在app.js的小程序初始化加载onLaunch中,我们在index.js加载页面时候需要依赖使用登录token做一些处理,这个时候可能异步请求登录还没返回,就会导致获取到的token为空。

这里就需要使用new Promise监听异步操作成功后再处理index.js中相关依赖于token的逻辑。具体处理后续 登录实现章节 贴。


获取今日已提问次数和聊天记录

这两个则直接通过wx.request请求即可,具体实现也在后续章节。


gpt_38">发起gpt聊天和响应

这个就是整个小程序的核心内容了,这里会拆分两个API

第一个API: 请求验证是否可发起(次数够…),成功则追加当前发起内容到页面显示,失败则弹框提示;

第二个API: 验证通过后发起websocket连接,通过流模式响应后端返回,并将接受到的流内容做追加到页面显示。


总结,我们总共需要5个后端API,都会在之后单独的章节,实现具体的逻辑和流程

  1. 登录API
  2. 获取次数API
  3. 获取聊天记录API
  4. 请求发起聊天API
  5. 请求后端流模式响应API

http://www.niftyadmin.cn/n/4925783.html

相关文章

【Express.js】全面鉴权

全面鉴权 这一节我们来介绍一下 Passport.js,这是一个强大的 NodeJS 的认证中间件 Passport.js 提供了多种认证方式,账号密码、OpenID、ApiKey、JWT、OAuth、三方登录等等。 使用 Passport.js 认证要配置三个部分: 认证策略中间件会话 接…

【动态规划刷题 6】 删除并获得点数 粉刷房子

740. 删除并获得点数 给你一个整数数组 nums ,你可以对它进行一些操作。 每次操作中,选择任意一个 nums[i] ,删除它并获得 nums[i] 的点数。之后,你必须删除 所有 等于 nums[i] - 1 和 nums[i] 1 的元素。 开始你拥有 0 个点数。…

Cobalt Strike(cs)下载及使用

下载地址 https://pan.baidu.com/s/1OzsPz8vzEunZW35Oqdq2aw?pwdraf2 提取码:raf2 使用 1、启动服务 2、客户端连接服务,可以是linux\windows 3.新建监听器 4、生成反弹shell 5、在目标机器上执行生成的exe文件,靶机可以ping同攻击机&…

[保研/考研机试] KY129 简单计算器 浙江大学复试上机题 C++实现

描述 读入一个只包含 , -, *, / 的非负整数计算表达式,计算该表达式的值。 输入描述: 测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一个空格分隔。没有非法表达式。当一行中…

将.doc文档的默认打开方式从WPS修改为word office打开方式的具体方法(以win 10 操作系统为例)

将.doc文档的默认打开方式从WPS修改为word office打开方式的具体方法(以win 10 操作系统为例) 随着近几年WPS软件的不断完善和丰富,在某些方面取得了具有特色的优势。在平时编辑.doc文档时候也常常用到wps软件,不过WPS文献也存在…

解决Windows:Call to undefined function exif_imagetype()

很明显,是php安装时没有打开某些扩展,以致不能执行exif_imagetype()这个方法,因此需要打开。 网上很多人说需要打开下面这两个扩展: extension=php_exif.dll extension=php_mbstring.dll 但只说对了一半,我一开始也按照网上文章说的打开这两个扩展,但是还是同样错误。…

Python-OpenCV中的图像处理-图像轮廓

Python-OpenCV中的图像处理-图像轮廓 轮廓什么是轮廓查找轮廓绘制轮廓 轮廓特征图像的矩轮廓面积轮廓周长(弧长)轮廓近似凸包轮廓边界矩形 轮廓 什么是轮廓 轮廓可以简单认为成将连续的点(连着边界)连在一起的曲线,具…

WordPress使用【前端投稿】功能时为用户怎么添加插入文章标签

在使用Wordpress做前端投稿功能的时候,可能需要用户填写文章标签,在插入文章的时候很多人不知道怎么把这些标签插入进去,下面这篇文章来为大家带来WordPress使用前端投稿功能时插入文章标签方法。 在Wordpress里 wp_insert_post 此函数的作…