内容提要
Supabase-js v2发布,重点改善开发者体验。新增Type支持、认证方法和实时多人功能,文档自动生成,支持多种语言。错误处理方式改进,返回错误而非抛出。创建gotrue-js库,支持第三方登录。所有库现已使用TypeScript构建,增强实时可扩展性,解决了60%的小错误。
延伸解读
错误处理范式转变
Supabase-js v2 将错误处理从抛出异常改为返回错误对象,这要求开发者调整原有的 try-catch 逻辑。新模式下,错误与数据一同返回,便于在调用处就近处理,但需注意检查 error 变量,避免遗漏。若习惯异常机制,仍可手动重新抛出。这一变化虽提升体验,但迁移时需全面审查代码。
破坏性变更与升级要点
v2 包含多项破坏性变更,如 signup() 改为 signUp()、logout() 改为 signOut()、login() 改为 signIn(),且 body 统一为 data。升级时需安装最新版,并逐一替换这些 API 和常量。官方提供了发布说明,建议按步骤迁移,避免因接口变动导致运行时错误。
架构优化与生态整合
所有库已用 TypeScript 原生构建,并创建了独立的 gotrue-js 库以支持第三方登录。实时功能改为每个客户端仅生成一个 socket 连接,替代了以往每个订阅单独连接的方式,提升了可扩展性。这些改进体现了 Supabase 整合开源工具、保持子库独立性的设计哲学。
Q&A
Supabase-js v2有哪些主要改进?
Supabase-js v2主要改进包括Type支持、新的认证方法、实时多人功能预览、文档自动生成和错误处理方式改进。
Supabase-js v2如何改善错误处理?
Supabase-js v2改进了错误处理方式,错误现在是返回而非抛出,这提升了开发者体验。
Supabase-js v2支持哪些编程语言?
Supabase-js v2支持多种语言,包括Python、C#、Dart、Rust和Swift。
gotrue-js库的主要功能是什么?
gotrue-js库用于支持Netlify的GoTrue认证服务器,并包括第三方登录功能。
如何升级到Supabase-js v2?
升级到Supabase-js v2的步骤包括安装新版本、更新所有body常量为data,并更新所有supabase.auth函数以使用新的认证接口。
Supabase-js v2解决了多少个小错误?
Supabase-js v2解决了60%的小错误。