Autodesk Forge数据可视化API上传CSV数据返回500错误
Forge Data Visualization CSV导入500错误排查指引
你遇到的SyntaxError: Unexpected token s in JSON at position 0报错,本质是后端接口抛出了纯文本格式的错误信息(通常以Error、SyntaxError这类s开头的字符串开头),前端默认按JSON解析直接失败。核心问题集中在环境变量配置错误,按以下步骤逐一排查:
1. 修复环境变量配置错误
当前配置存在3个明确会触发500错误的问题:
- 路径分隔符不兼容:配置里用Windows反斜杠
\写相对路径时,Node.js会将反斜杠识别为转义符,直接触发文件找不到错误。将CSV_MODEL_JSON、CSV_DEVICE_JSON、CSV_FOLDER三个配置的路径分隔符全部替换为正斜杠/,修正后示例:CSV_MODEL_JSON=server/gateways/synthetic-data/device-models.json CSV_DEVICE_JSON=server/gateways/synthetic-data/devices.json CSV_FOLDER=server/gateways/csv - 配置值多余包裹引号:
CSV_DELIMITER、CSV_LINE_BREAK、CSV_TIMESTAMP_COLUMN、CSV_FILE_EXTENSION四个配置的值外层都加了双引号,Node.js读取环境变量时会把引号识别为值的一部分,导致实际生效的分隔符、列名和CSV文件实际格式不匹配,直接触发解析失败。删掉所有值外层的双引号,修正为:CSV_DELIMITER=\t CSV_LINE_BREAK=\n CSV_TIMESTAMP_COLUMN=time CSV_FILE_EXTENSION=.csv - 时间范围配置为空:
CSV_DATA_START和CSV_DATA_END留空时,部分版本的CSV适配器会直接抛出未定义参数错误。填入和你CSV文件覆盖区间匹配的时间即可,比如参考官方示例数据的时间区间可填:CSV_DATA_START=2021-01-01T00:00:00.000Z CSV_DATA_END=2021-02-01T00:00:00.000Z
2. 校验文件匹配规则
配置修改完成后先做两项基础校验:
- 确认CSV文件存放在你配置的
CSV_FOLDER路径下,文件编码为UTF-8无BOM格式,第一列表头为time,列之间用制表符分隔,和配置项完全匹配 - 确认设备配置文件里的设备ID和CSV文件名一一对应:比如设备ID为
Hyperion-1时,对应CSV文件名必须为Hyperion-1.csv,否则会触发文件不存在错误
3. 精准定位剩余问题
如果修正上述配置后仍报错,直接查看启动后端服务的终端控制台输出的错误栈,无需只看前端控制台报错:
- 出现
ENOENT: no such file or directory报错时,检查启动服务的工作目录是否在项目根目录,相对路径配置是否正确 - 出现列解析相关报错时,检查CSV文件是否被办公软件自动修改为逗号分隔格式,和配置的制表符分隔规则不匹配
- 出现时间格式报错时,检查CSV中time列的格式是否符合
YYYY-MM-DDTHH:MM:SS.000Z规范,无多余空格或非法字符
内容的提问来源于stack exchange,提问作者stef
相关产品推荐
相关产品推荐

