在Salesforce Functions中无法使用http模块,出现require未定义错误
解决Salesforce Functions中
require is not defined错误 问题原因
Salesforce Functions默认采用**ES模块(ECMAScript Modules)**规范,而require()是CommonJS模块的语法,两种模块系统无法在同一文件中混用,因此抛出require is not defined错误。
解决方案
将CommonJS的require语法替换为ES模块的import语法:
import http from 'http'; export default async function (event, context, logger) { // 后续业务逻辑代码 }
额外说明
- Salesforce Functions运行环境完全支持Node.js核心模块的ES模块导入方式,无需额外安装依赖。
- 若项目根目录的
package.json中未包含"type": "module"字段,建议添加该字段以明确模块规范(多数Salesforce Functions初始化项目已默认配置)。
内容的提问来源于stack exchange,提问作者rjp
相关产品推荐
相关产品推荐

