[RFC] 058 - 服务端接口架构梳理 #3755
arvinxx
started this conversation in
RFC | 特性开发
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
背景
LobeChat 后续会有越来越多的后端能力,因此需要提前规划好服务端接口的命名规则和架构,进而在后续迭代中能够按照规范进行开发。
基础设计
计划分为三类接口:
/trpc/*
:trpc 接口 ,主要内部调用服务,如果没有特殊原因,后续会尽量优先新增 trpc 接口,开发效率比较高;/webapi/*
: webapi 接口 ,辅助性的内部调用接口,一般情况下是 trpc 类的服务不好接入,因此需要单独在此写接口方法,书写风格上是 Next Route 的写法;/api/*
:Public API 接口 , 未来会考虑将部分 LobeChat 的功能以 API 的形式提供出来,因此会提供 Public API 接口,这一部分接口会按照/v1
/v2
来保证各个大版本内的稳定性。目前还有大量的
/api
下的接口其实属于内部接口,需要改造到 trpc 实现或移动到 webapi 目录下:lobe-chat/src/services/_url.ts
Lines 19 to 39 in e960a23
实现进展
/webapi/tokenizer
⚡️ perf: improve performance on long context text #3754/webapi/tts/*
和/webapi/stt/*
♻️ refactor: refactor the tts route url #4030/webapi/proxy
🐛 fix: try to implement better ssrf-protect #4044/api/chat/*
等下一个中版本进行迁移 ♻️ refactor:/api
to/webapi
#4233/api/chat/*
到/webapi/chat/*
♻️ refactor: refactor the chat webapi #4339Beta Was this translation helpful? Give feedback.
All reactions