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

使用catalyst serve测试Catalyst Node函数时遇“默认导出非函数”错误

解决Catalyst Node函数本地测试报错:The default export is not a function

错误原因

你的代码仅创建了Express应用,但未导出Catalyst Node函数要求的默认入口函数。Catalyst本地服务期望你的代码导出一个可执行的处理函数作为请求入口,因此触发该错误。

修改方案

提供两种适配方式,根据你的需求选择:

方式1:直接导出请求处理函数(适合简单场景)

'use strict';

module.exports = async (req, res) => {
  if (req.path === '/health' && req.method === 'GET') {
    res.sendStatus(200);
  } else {
    res.sendStatus(404);
  }
};

方式2:适配现有Express应用(适合多路由场景)

保留你的Express路由配置,只需在代码末尾添加导出语句,将app作为处理函数导出:

'use strict';
var express = require('express');
var app = express();

app.use(express.json());

app.get('/health', async (req, res) => {
    res.sendStatus(200);
});

// 导出Express应用作为Catalyst的入口处理函数
module.exports = app;

验证步骤

  1. 替换原代码为上述修改后的版本
  2. 重新执行catalyst serve启动本地服务
  3. 访问https://localhost:3000/server/node_function/health,即可正常返回200状态码

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 05:53:14