代码之家  ›  专栏  ›  技术社区  ›  Richi

无法在nodejs中使用超级数据库获取数据

  •  0
  • Richi  · 技术社区  · 3 年前

    我试图在我的nodejs api中实现superabase,但每次调用端点时都会返回一个错误: TypeError: supabase.from is not a function 。启动超级函数的函数是:

    // Supabase client
    const supabase = require('@supabase/supabase-js');
    console.log(supabase)
    
    const stripeTest = async(req, res) => {
      console.log('hellooo!!!!!');
     
      try {
        const {data: events} = await supabase
        .from('events')
        .select('id')
    
        console.log('events', events)
        
      } catch (error) {
        console.log('error ', error);
      }
    
    }
    

    在名为 config.js :

    import { createClient } from '@supabase/supabase-js';
    
    const supabaseUrl = process.env.APP_SUPABASE_URL;
    const supabaseAnonKey = process.env.APP_SUPABASE_ANON_KEY;
    
    const supabase = createClient(supabaseUrl, supabaseAnonKey)
    

    我正在使用的库是: supabase-js

    0 回复  |  直到 3 年前
        1
  •  1
  •   Richi    3 年前

    您应该从导出客户端 config.js :

    const { createClient } = require('@supabase/supabase-js');
    
    const supabaseUrl = process.env.APP_SUPABASE_URL;
    const supabaseAnonKey = process.env.APP_SUPABASE_ANON_KEY;
    
    module.exports = createClient(supabaseUrl, supabaseAnonKey);
    

    并将其用于您的功能:

    const supabase = require('./path/to/config.js');
    
    const stripeTest = async(req, res) => {
      console.log('hellooo!!!!!');
     
      try {
        const {data: events} = await supabase
        .from('events')
        .select('id')
    
        console.log('events', events)
        
      } catch (error) {
        console.log('error ', error);
      }
    }