本地自托管Supabase如何生成类型?解决访问令牌报错问题
本地自托管Supabase生成TypeScript类型的解决方法
你遇到的问题是因为npx supabase gen types typescript默认会对接Supabase云端API,所以要求提供访问令牌,但自托管环境不需要走云端,直接连接本地PostgreSQL数据库就能生成类型。
解决步骤如下:
首先确认本地Supabase PostgreSQL的连接信息:
本地Supabase默认的数据库端口是54322,用户名和密码默认都是postgres,数据库名是postgres,所以默认连接URL是:postgresql://postgres:postgres@localhost:54322/postgres
如果你修改过数据库密码,替换掉URL里的postgres:postgres部分即可。使用
--db-url参数直接连接本地数据库生成类型:
执行以下命令(可以把输出重定向到你想要的文件,比如types/supabase.ts):npx supabase gen types typescript --db-url postgresql://postgres:postgres@localhost:54322/postgres > types/supabase.ts也可以通过环境变量
DATABASE_URL来指定,命令如下:DATABASE_URL=postgresql://postgres:postgres@localhost:54322/postgres npx supabase gen types typescript > types/supabase.ts
这样就能绕开访问令牌的要求,直接从本地数据库生成对应的TypeScript类型了。
内容的提问来源于stack exchange,提问作者machineghost
相关产品推荐
相关产品推荐

