You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Next.js项目调用Supabase函数遇API key缺失,需暴露函数至API

解决Supabase函数API暴露及API Key报错问题

一、找到函数API暴露的设置位置

  1. 登录Supabase项目控制台,左侧菜单栏点击SQL编辑器。
  2. 切换到顶部的函数标签,找到你编写的PL/pgSQL函数。
  3. 点击函数右侧的编辑按钮进入编辑界面。
  4. 在安全性区域,勾选对于公共API可执行选项,保存更改即可。

二、解决API Key报错

即使开启了函数的API访问权限,调用时必须携带Supabase公钥:

  • 可以在请求头中添加:apikey: 你的Supabase公钥(公钥可在控制台项目设置→API页面找到)
  • 也可以在请求URL后拼接参数:?apikey=你的Supabase公钥

补充:检查函数定义完整性

你的函数缺少参数声明和基础属性定义,完整的函数创建语句应该类似这样(根据实际参数调整):

CREATE OR REPLACE FUNCTION create_guesser_session(responder_id uuid, question_id uuid)
RETURNS void AS $$
declare
  partner uuid;
begin
  select partner_id into partner
  from profiles
  where id = responder_id;

  if partner is not null then
    insert into knob_game_sessions (user_id, question_id, role)
    values (partner, question_id, 'guesser')
    on conflict do nothing;
  end if;
end;
$$ LANGUAGE plpgsql SECURITY DEFINER;

如果之前没补全这些内容,先重新创建函数,再去设置API暴露权限。


内容的提问来源于stack exchange,提问作者Duck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 19:52:33